Γιώργο, νομίζω μπορούμε να κάνουμε αυτόν τον διαχωρισμό.
Στην πρώτη περίπτωση έχουμε πίνακα με μέγεθος Ν, ενώ στην δεύτερη πίνακα αγνώστου πλήθους στοιχείων.
Έχει πλάκα πάντως γιατί το παράδειγμα που γράφεις με α[ν + 1] το έχω χρησιμοποιήσει για αποδείξω ότι οι πίνακες της ψευδογλώσσας δεν γίνεται να υλοποιηθούν με μη δυναμικό τρόπο! Παρ' όλα αυτά δεν μας ενδιαφέρει η υλοποίηση αλλά η χρησιμοποίηση της αφηρημένης δομής του πίνακα.
Για να κρίνουμε το αν η δομή είναι στατική ή όχι πρέπει να έχουμε όλο τον αλγόριθμο και όχι τμήμα του.
Στον τελευταίο αλγόριθμό σου, αν εκεί τελειώνει η προσθήκη τιμών στον πίνακα τότε νομίζω ότι ο πίνακας μπορεί να υλοποιηθεί στατικά και έχει μέγεθος ν + 1.
Και ποιος μας λέει ότι το Διάβασε ν σημαίνει ότι έχω πίνακα μεγέθους ν;
Μπορεί πχ η εκφώνηση να λέει «Να γραφτεί αλγόριθμος που θα διαβάζει ένα ακέραιο ν ο οποίος θα αντιστοιχεί στο πλήθος των κλασμάτων που θα εισαχθούν και στη συνέχεια θα διαβάζει τους αριθμητές και παρονομαστές τους και θα τους καταχωρεί σε πίνακα μεγέθους 2ν»
Έτσι το Διάβασε ν δεν σημαίνει ότι έχουμε πίνακα μεγέθους ν. Στο συγκεκριμένο παράδειγμα που αναφέρω μπορεί να σημαίνει ότι έχω μέγεθος 2ν. Βασικά αυτό θέλω να πω: ότι το Διάβασε ν δε σημαίνει τίποτα για το μέγεθος του πίνακα. Μόνο μετά το τέλος της εκτέλεσης όλου του αλγορίθμου μπορείς να ξέρεις τι μέγεθος είχε τελικά ο πίνακας. Κανείς δεν με εμποδίζει στην προτελευταία γραμμή να γράψω
Διάβασε μ
και στην τελευταία να γράψω
Διάβασε α[ν+μ]
Αφού λοιπόν μόνο μετά το τέλος του αλγορίθμου μπορώ να ξέρω τι μέγεθος είχε τελικά ο πίνακας τότε γιατί είναι λάθος το παρακάτω παράδειγμα;
ι<-0
Διάβασε χ
Όσο χ <>0 επανάλαβε
ι<-ι+1
Α[ι]<-χ
Διάβασε χ
Τέλος_επανάληψης
Όπως η είσοδος της τελευταίας στιγμής καθορίζει το μέγεθος του ενός έτσι ακριβώς και η είσοδος της τελευταίας στιγμής καθορίζει το μέγεθος του άλλου. Αν είναι το ένα σωστό είναι σωστό και το άλλο.