Εντοπίστε τα συντακτικά λάθη στο πρόγραμμα «Αθροισμα_θετικών_αριθμών» (κώδικας σε ΓΛΩΣΣΑ [5.1]) και προτείνετε διορθώσεις.
Σκέψη / Μεθοδολογία: Ελέγχουμε αν λείπει η λέξη ΑΡΧΗ, αν οι δομές ΓΙΑ/ΑΝ χρησιμοποιούν τις σωστές δεσμευμένες λέξεις (ΜΕΧΡΙ όχι ΕΩΣ, ΤΟΤΕ μετά τη συνθήκη), και αν κάθε δομή κλείνει με το αντίστοιχο ΤΕΛΟΣ_....
Λύση:
Εντοπίζουμε ότι λείπει η δεσμευμένη λέξη ΑΡΧΗ πριν την πρώτη εκτελέσιμη εντολή. Εντοπίζουμε ότι η δομή ΓΙΑ χρησιμοποιεί λανθασμένα το ΕΩΣ αντί του ΜΕΧΡΙ, και λείπει το ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ. Εντοπίζουμε ότι λείπει η λέξη ΤΟΤΕ μετά τη συνθήκη Χ > 0.
Απάντηση: Τα συντακτικά λάθη είναι: (1) απουσία της λέξης ΑΡΧΗ, (2) λανθασμένη χρήση ΕΩΣ αντί ΜΕΧΡΙ και απουσία ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ στη δομή ΓΙΑ, (3) απουσία της λέξης ΤΟΤΕ μετά τη συνθήκη «Χ > 0». Το διορθωμένο πρόγραμμα προσθέτει ΑΡΧΗ, αλλάζει το ΓΙΑ Ι ΑΠΟ 1 ΕΩΣ 10 σε ΓΙΑ Ι ΑΠΟ 1 ΜΕΧΡΙ 10 με κλείσιμο ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ, και γράφει ΑΝ Χ > 0 ΤΟΤΕ.
Πρόσεξε:
Εντοπίστε τα συντακτικά λάθη στο πρόγραμμα «Αθροισμα_θετικών_αριθμών» (κώδικας σε ΓΛΩΣΣΑ [5.3]) και προτείνετε διορθώσεις.
Σκέψη / Μεθοδολογία: Ελέγχουμε τη δομή ΟΣΟ (λείπει ΕΠΑΝΑΛΑΒΕ; κλείνει σωστά;) και τη δομή επιλογής (η λέξη ΕΑΝ δεν είναι έγκυρη δεσμευμένη λέξη στη ΓΛΩΣΣΑ — η σωστή είναι ΑΝ).
Λύση:
Στη γραμμή «ΟΣΟ Χ > 0» λείπει η δεσμευμένη λέξη ΕΠΑΝΑΛΑΒΕ. Στη γραμμή «ΕΑΝ Σ > 0 ΤΟΤΕ» χρησιμοποιείται η λανθασμένη λέξη ΕΑΝ αντί της σωστής ΑΝ.
Απάντηση: Τα συντακτικά λάθη είναι δύο: (1) η δομή επανάληψης πρέπει να γράφεται «ΟΣΟ Χ > 0 ΕΠΑΝΑΛΑΒΕ» (λείπει η λέξη ΕΠΑΝΑΛΑΒΕ), (2) η δομή επιλογής πρέπει να ξεκινά με «ΑΝ Σ > 0 ΤΟΤΕ» και όχι «ΕΑΝ Σ > 0 ΤΟΤΕ», αφού η ΓΛΩΣΣΑ δεν αναγνωρίζει τη δεσμευμένη λέξη ΕΑΝ.
Πρόσεξε:
