The words you are searching are inside this book. To get more targeted content, please make full-text search by clicking here.
Discover the best professional documents and content resources in AnyFlip Document Base.
Search
Published by Savalas Publications, 2021-01-08 02:13:31

21382

21382

Πρόλογος

Το βιβλίο αυτό αποτελεί βοηθητικό εργαλείο για το μάθημα «Ανάπτυξη Εφαρμο-
γών σε Προγραμματιστικό Περιβάλλον (ΑΕΠΠ)» και υπηρετεί τους στόχους ενός
μαθήματος αλγοριθμικής οι οποίοι είναι η καλλιέργεια αναλυτικής σκέψης και συν-
θετικής ικανότητας, η ανάπτυξη δημιουργικότητας και φαντασίας, η αυστηρότητα
και η σαφήνεια έκφρασης και διατύπωσης. Περιέχει μια ολιστική και ολοκληρωμέ-
νη πρόταση για τη διδασκαλία της ΑΕΠΠ. Ενσωματωμένα σε ενιαία ροή και με νέα
οργάνωση περιλαμβάνονται:

• Η θεωρία οργανωμένη σε ερωτήσεις ανάπτυξης.

• Ερωτήσεις κατανόησης (σωστό-λάθος, αντιστοιχίσεις, ερωτήσεις κρίσεως,
πολλαπλής επιλογής, εύρεσης λάθους, κατανόησης κώδικα, συμπλήρωσης κε-
νού, σταυρόλεξα κ.λπ.).

• Λυμένες ασκήσεις που αναδεικνύουν στοιχεία της θεωρίας με αναλυτική μεθο-
δολογία.

• Τα θέματα των εξετάσεων ΓΕΛ (ημερησίων, εσπερινών λυκείων, επαναληπτι-
κών).

• Προσαρμοσμένα τα θέματα των εξετάσεων του μαθήματος των ΕΠΑΛ «Προ-
γραμματισμός Υπολογιστών».

• Προσαρμοσμένα τα θέματα της τράπεζας θεμάτων του μαθήματος Β´ Λυκείου
«Επιστήμη Υπολογιστών».

• Προσαρμοσμένο υλικό από τον Πανελλήνιο Διαγωνισμό Πληροφορικής, τις
Παγκύπριες Εξετάσεις κ.ά.

• Κριτήρια αξιολόγησης.

• Κατάλληλα διαμορφωμένα κεφάλαια για την τελική επανάληψη.

• Απαντήσεις - υποδείξεις για όλα τα θέματα.

• Οι λύσεις των ασκήσεων του τετραδίου μαθητή και του παραρτήματος οδηγιών
μελέτης μαθητή.

Οποιαδήποτε πρόταση, σχόλιο ή παρατήρηση είναι ευπρόσδεκτη. Για ενημέρω-
ση σχετικά με το βιβλίο ή πρόσθετο υλικό επισκεφτείτε την ιστοσελίδα:

http://ptsiotakis.blogspot.gr .

Θα ήθελα να ευχαριστήσω όλους τους εκπαιδευτικούς Πληροφορικής για την επι-
κοινωνία όλα αυτά τα χρόνια και τον Παντελή Γιαννίτσιο για τις ιδέες του σχετικά με
την οργάνωση του υλικού του βιβλίου. Ευελπιστώ το έργο αυτό να προσφέρει σημα-
ντική και ουσιαστική βοήθεια στην προσπάθεια εκπαιδευτικών και μαθητών.

Ο συγγραφέας

Σημείωμα προς τον μαθητή

Αγαπητέ μαθητή,

Το βιβλίο αυτό έχει οργανωθεί σε διδακτικές ενότητες που αντιστοιχούν σε μία ή
περισσότερες ώρες διδασκαλίας. Η προτεινόμενη ροή διδασκαλίας δεν είναι μονα-
δική, η οργάνωση του υλικού επιτρέπει εναλλακτικά διδακτικά μονοπάτια κι έτσι
μπορείς, σε συνεργασία με τον εκπαιδευτικό σου, να επιλέξεις το πλέον κατάλληλο.

Σε καλώ να ασχοληθείς με ολόκληρο το υλικό, παρότι είναι αρκετό, γιατί θα σε
βοηθήσει να μεγιστοποιήσεις την εμπειρία σου, να εμβαθύνεις στην αναλυτική σκέ-
ψη και να αναπτύξεις προγραμματιστική λογική.

Κάποιες ασκήσεις, καθώς και τα κεφάλαια εμπέδωσης στο τέλος κάθε ενότητας,
μπορούν να αξιοποιηθούν στην τελική επανάληψη. Σε κάθε κεφάλαιο η ροή των
ασκήσεων καθορίζεται από την κατηγοριοποίησή τους και τον κλιμακούμενο βαθ-
μό δυσκολίας και απαιτήσεων επίλυσης.

Ιδιαίτερη θέση στη μελέτη σου πρέπει να έχουν οι λυμένες ασκήσεις του βιβλί-
ου και όλα τα πλαίσια με την ένδειξη «χρήσιμα στοιχεία». Σε αυτά αναλύονται
στοιχεία της θεωρίας που αξιοποιούνται στις ασκήσεις, μεθοδολογία, τεχνικές κ.ά.

Κατά τη διάρκεια της προετοιμασίας σου πρέπει να τις λύσεις και εσύ, ώστε να
εξοικειωθείς με τον επιθυμητό τρόπο εργασίας και να κατακτήσεις τα απαραίτητα
στοιχεία/γνώσεις τις οποίες αξιοποιούν. Φυσικά, για να αφομοιώσεις τη μεθοδολο-
γία, μπορείς να ανατρέχεις σε αυτές όταν ασχολείσαι με αντίστοιχες ασκήσεις στο
ίδιο κεφάλαιο ή σε κεφάλαιο εμπέδωσης.

Η αλγοριθμική σκέψη βασίζεται στη δημιουργικότητα και στη φαντασία, στην
ανάλυση και στην επίλυση προβλημάτων. Σε αυτό το βιβλίο δεν θα βρεις έτοιμες
συνταγές, τυποποιημένες λύσεις και μυριάδες κατηγοριοποιήσεις ασκήσεων. Θα
βρεις γενικά εφαρμόσιμες οδηγίες και πλήρη μεθοδολογία για έναν ολιστικό τρόπο
σκέψης, έναν συγκροτημένο δηλαδή τρόπο για να αντιμετωπίσεις επιτυχώς όποιο
ερώτημα σου τεθεί.

Σου εύχομαι κάθε επιτυχία και ευόδωση των στόχων σου!

Περιεχόμενα

Ενότητα: Δομή ακολουθίας

1. Έννοιες αλγορίθμων.....................................................................................................11
2. Βασικά στοιχεία αλγορίθμων.......................................................................................15
3. Κωδικοποίηση αλγορίθμων: Ψευδοκώδικας και ΓΛΩΣΣΑ..........................................61
Κριτήριο αξιολόγησης 1..................................................................................................71
4. Σύνθετα ζητήματα στη δομή ακολουθίας.....................................................................73
5. Ασκήσεις εμπέδωσης στη δομή ακολουθίας................................................................82
Κριτήριο αξιολόγησης 2..................................................................................................85

Ενότητα: Δομή επιλογής

6. Λογικές εκφράσεις.......................................................................................................89
7. Η δομή απλής επιλογής..............................................................................................110
8. Η δομή σύνθετης επιλογής.........................................................................................120
9. Ασκήσεις στις δομές απλής και σύνθετης επιλογής...................................................134
10. Εμφωλευμένες δομές επιλογής..................................................................................147
Κριτήριο αξιολόγησης 3................................................................................................168
11. Η δομή πολλαπλής επιλογής......................................................................................172
12. Κλιμακωτή επεξεργασία δεδομένων..........................................................................200
13. Σύνθετα ζητήματα στη δομή επιλογής.......................................................................207
14. Ασκήσεις εμπέδωσης στη δομή επιλογής..................................................................221
Κριτήριο αξιολόγησης 4................................................................................................231
Κριτήριο αξιολόγησης 5................................................................................................235

Ενότητα: Δομή επανάληψης

15. Η δομή Όσο...............................................................................................................243
16. Η δομή Μέχρις_ότου.................................................................................................258
17. Η δομή Για.................................................................................................................267
18. Απλές ασκήσεις κατανόησης με δομές επανάληψης
(Γνωστό / άγνωστο πλήθος επαναλήψεων, άθροισμα / πλήθος τιμών,
υπέρβαση ορίου, απλές σειρές)..................................................................................279
19. Συγκριτική μελέτη δομών επανάληψης. Διαφορές Όσο και Μέχρις_ότου
(Τιμή φρουρός, έλεγχος δεδομένων, πολλαπλασιασμός αλά ρωσικά,
ασκήσεις με απάντηση ΝΑΙ / ΟΧΙ)............................................................................297
Κριτήριο αξιολόγησης 6................................................................................................324
20. Ασκήσεις στις δομές επανάληψης
(Ελάχιστο / μέγιστο τιμών).........................................................................................327

21. Ασκήσεις στις δομές επανάληψης
(Προβλήματα ανατοκισμού και επαναληπτικών υπολογισμών)................................336
22. Ειδικά θέματα στην επαναληπτική δομή
(Μη υπέρβαση ορίου, προβλήματα απόφασης, διαχείριση μενού)...........................342
23. Ασκήσεις ανασκόπησης στην επαναληπτική δομή....................................................351
24. Εμφωλευμένες διαδικασίες........................................................................................357
25. Μαθηματικά προβλήματα..........................................................................................371
26. Μετατροπές μεταξύ δομών επανάληψης...................................................................378
27. Διαγράμματα ροής.....................................................................................................396
28. Γενικές επαναληπτικές ασκήσεις στις δομές επανάληψης........................................419
29. Ασκήσεις εμπέδωσης στις δομές επανάληψης...........................................................441
Κριτήριο αξιολόγησης 7................................................................................................457
Κριτήριο αξιολόγησης 8................................................................................................461
Επαναληπτικό κριτήριο αξιολόγησης 9.......................................................................464
Επαναληπτικό κριτήριο αξιολόγησης 10.....................................................................468
Επαναληπτικό κριτήριο αξιολόγησης 11.....................................................................473

Ενότητα: Εισαγωγή στον προγραμματισμό

30. Φυσικές και τεχνητές γλώσσες..................................................................................481
31. Μεθοδολογίες προγραμματισμού..............................................................................485
32. Προγραμματιστικά περιβάλλοντα..............................................................................494

Απαντήσεις - Παραρτήματα

Υποδείξεις - Απαντήσεις..................................................................................................513
Παράρτημα 1: Λύσεις ασκήσεων τετραδίου μαθητή.......................................................684
Παράρτημα 2: Λύσεις ασκήσεων οδηγιών μελέτης μαθητή............................................695
Τυπολόγιο........................................................................................................................702

Ενότητα: Δομή ακολουθίας

2 Βασικά στοιχεία αλγορίθμων

Παράγραφοι 2.4 και 2.4.1 βιβλίου μαθητή
Παράγραφοι 7.1 έως και 7.10 βιβλίου μαθητή

Ερωτήσεις κατανόησης

2.1  Ερωτήσεις ανάπτυξης σχετικά με την ψευδογλώσσα

1. Να αναφέρετε τις βασικές αλγοριθμικές δομές (συνιστώσες/εντολές ενός αλγο-

ρίθμου). (Εξετάσεις 2001)

Απάντηση

Δομή ακολουθίας, δομή επιλογής και δομή επανάληψης.

2. Να δώσετε τον ορισμό της δομής ακολουθίας.
Απάντηση

Η ακολουθιακή δομή εντολών χρησιμοποιείται για την αντιμετώπιση απλών προβλημάτων όπου
είναι δεδομένη η σειρά εκτέλεσης ενός συνόλου ενεργειών.

3. Ποια είναι τα κυριότερα χρησιμοποιούμενα γεωμετρικά σχήματα σε ένα διά-

γραμμα ροής και τι ενέργεια ή λειτουργία δηλώνει το καθένα; (Εξετάσεις 2008)

Ή αλλιώς:

α. Ποια είναι τα τέσσερα κυριότερα χρησιμοποιούμενα γεωμετρικά σχήματα
(σύμβολα) σε ένα διάγραμμα ροής;

β. Να αναφέρετε τι δηλώνουν δύο οποιαδήποτε από τα παραπάνω γεωμετρικά σχή-

ματα (σύμβολα). (Εξετάσεις 2014)

Απάντηση

Σε ένα διάγραμμα ροής χρησιμοποιείται η έλλειψη, που δηλώνει την αρχή και το τέλος του αλ-
γορίθμου, το πλάγιο παραλληλόγραμμο, που δηλώνει την είσοδο και έξοδο τιμών, το ορθογώνιο
παραλληλόγραμμο, που δηλώνει την εκτέλεση πράξεων, και ο ρόμβος, που εκφράζει τις συνθή-
κες οι οποίες διατυπώνονται σε έναν αλγόριθμο.

4. Τι είναι οι μεταβλητές; Ποιοι είναι οι τύποι μεταβλητών στην ψευδογλώσσα;

15

Απάντηση

Μεταβλητή είναι ένα γλωσσικό αντικείμενο που χρησιμοποιείται για να αναπαραστήσει ένα
στοιχείο δεδομένου. Το περιεχόμενο μιας μεταβλητής (όπως και το όνομά της δηλώνει) μπορεί
να τροποποιείται κατά τη διάρκεια εκτέλεσης ενός αλγορίθμου. Τα είδη των μεταβλητών είναι:
αριθμητικές (ακέραιες ή πραγματικές), αλφαριθμητικές (κείμενο ή χαρακτήρες) και λογικές (τι-
μές αληθής/ψευδής).

5. Τι είναι οι σταθερές στην ψευδογλώσσα;
Απάντηση

Οι σταθερές είναι προκαθορισμένες τιμές που δεν τροποποιούνται κατά τη διάρκεια εκτέλεσης
ενός αλγορίθμου. Μπορούν να είναι αριθμητικές, αλφαριθμητικές ή λογικές.

6. Για τις απλές αριθμητικές πράξεις να αναφέρετε τους αντίστοιχους τελεστές και

να δώσετε τη σειρά προτεραιότητας (ιεραρχία) των τελεστών αυτών στις αριθμη-

τικές εκφράσεις. (Εξετάσεις 2001)

Απάντηση

Οι αριθμητικοί τελεστές είναι οι: +, -, *, /, ^, div, mod. Η ιεραρχία είναι η ίδια που ισχύει και
στα μαθηματικά: ^, * /, +, -. Όσον αφορά την ιεραρχία στις πράξεις, οι τελεστές div και mod
ιεραρχούνται στο ίδιο επίπεδο με τον πολλαπλασιασμό και τη διαίρεση. ( Έγγραφο του Παιδαγω-
γικού Ινστιτούτου με Α.Π. 630/24-01-2008.) Ακόμη, η χρήση παρενθέσεων αλλάζει την ιεραρχία,
ενώ, όταν υπάρχουν πράξεις ίδιας προτεραιότητας σε μια έκφραση, αυτές εκτελούνται από αρι-
στερά προς τα δεξιά.

Οι τελεστές με τις αντίστοιχες πράξεις είναι:

Αριθμητικός Πράξη Παραδείγματα
τελεστής
+ Πρόσθεση 13 + 5 = 18
- Αφαίρεση 22 - 2 = 20
Πολλαπλασιασμός 2 * 7 = 14
* Διαίρεση 11 / 2 = 5.5
/ Ύψωση σε δύναμη
^ Πηλίκο ακέραιας διαίρεσης 3^2=9
div Υπόλοιπο ακέραιας διαίρεσης 9 div 2 = 4
mod 9 mod 2 = 1

Ειδικά οι τελεστές div και mod έχουν μεγάλη χρησιμότητα στους αλγορίθμους. Ενδεικτικά πα-
ραδείγματα αξιοποίησής τους παρατηρούμε στον παρακάτω πίνακα:

Πράξη Αποτέλεσμα
Α mod 10 Ψηφίο μονάδων
Α mod 100 Τελευταία 2 ψηφία αριθμού
Α div 10 (όπου Α διψήφιος) Ψηφίο δεκάδων

Ακόμη, με τη βοήθεια του τελεστή mod, όπως θα δούμε στην επόμενη ενότητα, μπορεί να γίνει
διερεύνηση αν ένας αριθμός είναι άρτιος ή περιττός, πολλαπλάσιο άλλου αριθμού κ.λπ.

16 2 - βασικα στοιχεια αλγορίθμων

7. Τι είναι οι τελεστές και ποιες είναι οι κατηγορίες των τελεστών; Να αναφέρετε

τους τελεστές ανά κατηγορία. (Εξετάσεις 2007)

Απάντηση

Τελεστές είναι ειδικά σύμβολα που χρησιμοποιούνται στις διάφορες πράξεις.

Υπάρχουν οι αριθμητικοί τελεστές (+, -, *, /, ^, div, mod), οι συγκριτικοί (>, <, >=, <=, =, <>)
και οι λογικοί τελεστές (και, ή, όχι). Περισσότερα θα αναφερθούν στα κεφάλαια 2 και 6.

8. Τι περιλαμβάνει μια έκφραση στον ψευδοκώδικα;
Απάντηση

Οι εκφράσεις διαμορφώνονται από τελεστέους (μεταβλητές, σταθερές), τελεστές και παρενθέ-
σεις. Σε μια έκφραση στην ψευδογλώσσα μπορούν να αξιοποιηθούν και οι συναρτήσεις της
ΓΛΩΣΣΑΣ (περισσότερα παρακάτω).

9. Για την εντολή εκχώρησης:

α. Να γράψετε τη σύνταξή της. (Εξετάσεις 2007)
β. Να περιγράψετε τη λειτουργία της.
Απάντηση

α. Μεταβλητή ← έκφραση.

β. Αρχικά αποτιμάται η τιμή της έκφρασης στο δεξί σκέλος και αποδίδεται η τιμή αυτή στη με-
ταβλητή που υπάρχει αριστερά. Η έκφραση και η μεταβλητή πρέπει να είναι του ίδιου τύπου.

Για τη σύνταξη της εντολής εκχώρησης δεν χρησιμοποιείται το = (όπως θα δούμε στην επόμε-
νη ενότητα, αποτελεί τελεστή σύγκρισης) αλλά το βέλος, που υποδηλώνει ιεράρχηση ενεργειών.

Η εντολή εκχώρησης τιμής θα αναλυθεί διεξοδικά στις λυμένες ασκήσεις αυτού του κεφαλαίου.

10.  Με ποιες εντολές ξεκινά και τερματίζεται η κωδικοποίηση στην ψευδογλώσσα;
Απάντηση

Για την έναρξη ενός αλγορίθμου χρησιμοποιείται η δεσμευμένη λέξη Αλγόριθμος και ακολου-
θεί το όνομά του. Ο τερματισμός δηλώνεται με τη δεσμευμένη λέξη Τέλος, που ακολουθείται
από το ίδιο όνομα. Για την είσοδο τιμών από το πληκτρολόγιο χρησιμοποιείται η εντολή Διάβα-
σε και ακολουθεί το όνομα της μεταβλητής.

11.  Ποιες είναι και τι εκφράζουν οι δηλωτικές και οι εκτελεστέες εντολές σε έναν
αλγόριθμο; Τι είναι δεσμευμένες λέξεις;
Απάντηση

Οι εκτελεστέες εντολές πραγματοποιούν ενέργειες στον κώδικα (π.χ. εντολή Διάβασε κ.ά.), ενώ
οι δηλωτικές εντολές νοηματοδοτούν συγκεκριμένες περιοχές στον κώδικα (π.χ. εντολή Αλγό-
ριθμος, Τέλος κ.ά.). Οι δεσμευμένες λέξεις είναι λέξεις που χρησιμοποιούνται στην κωδικοποί-
ηση για συγκεκριμένο σκοπό (π.χ. Διάβασε, Εμφάνισε κ.ά.).

12.  Πώς εισάγονται σχόλια σε έναν αλγόριθμο και τι ρόλο εξυπηρετούν;
Απάντηση

Προκειμένου να διαχωρίζονται οι επεξηγηματικές φράσεις από τις εντολές ενός αλγορίθμου,
χρησιμοποιείται το θαυμαστικό «!», και ό,τι ακολουθεί αγνοείται από τον αλγόριθμο.

Ενοτητα: δομη ακολουθιασ 17

2.11  Ερωτήσεις του τύπου Σωστό-Λάθος

1. Οι εκφράσεις διαμορφώνονται από τους τελεστέους και τους τελεστές. Σ   Λ 
Σ   Λ 
(Εξετάσεις 2014)
Σ   Λ 
2. Στη ΓΛΩΣΣΑ, ο μέσος όρος ενός συνόλου ακέραιων μεταβλητών πρέπει να Σ   Λ 
(Εξετάσεις 2013) Σ   Λ 
αποθηκευτεί σε μεταβλητή πραγματικού τύπου. Σ   Λ 
Σ   Λ 
3. Κατά την εκτέλεση της εντολής ΔΙΑΒΑΣΕ, το πρόγραμμα διακόπτει την εκτέ- Σ   Λ 
Σ   Λ 
λεσή του και περιμένει την εισαγωγή τιμών από το πληκτρολόγιο. Σ   Λ 
(Εξετάσεις 2013)
Σ   Λ 
4. Α_Μ(Χ) είναι η συνάρτηση της ΓΛΩΣΣΑΣ που υπολογίζει την απόλυτη τιμή
(Εξετάσεις 2009) Σ   Λ 
του Χ. Σ   Λ 
Σ   Λ 
5. Ο τύπος μιας μεταβλητής μπορεί να αλλάξει κατά την εκτέλεση ενός προγράμ- Σ   Λ 
(Εξετάσεις 2010)
ματος.

6. Η τιμή μιας μεταβλητής και ο τύπος της μπορούν να αλλάζουν κατά την εκτέ-
(Εξετάσεις 2013)
λεση ενός προγράμματος.

7. Κάθε πρόγραμμα γραμμένο στη ΓΛΩΣΣΑ περιλαμβάνει οπωσδήποτε τμήμα
(Εξετάσεις 2015)
δήλωσης σταθερών.

8. Η ακολουθιακή δομή εντολών χρησιμοποιείται όταν είναι δεδομένη η σειρά
(Εξετάσεις 2016)
εκτέλεσης ενός συνόλου ενεργειών.

9. Κάθε μεταβλητή παίρνει τιμή μόνο με εντολή εκχώρησης. (Εξετάσεις 2016)

10.  Η τελική τιμή μιας έκφρασης εξαρτάται από την ιεραρχία των πράξεων και
(Εξετάσεις 2016)
τη χρήση των παρενθέσεων.

11.  Η μεταβλητή Χ είναι ακέραιου τύπου στην εντολή εκχώρησης:

Χ ← Α_Μ(α) / 2 (Εξετάσεις 2017)

12.  Η ακολουθιακή δομή εντολών χρησιμοποιείται για την αντιμετώπιση προ-

βλημάτων στα οποία είναι δεδομένη η σειρά εκτέλεσης ενός συνόλου ενεργειών.
(Εξετάσεις 2008)

13.  Απαγορεύεται η αλλαγή τιμής των συμβολικών σταθερών.

14.  Ο τελεστής div μπορεί να εφαρμοστεί μόνο σε ακέραιους τελεστέους.

15.  Η πράξη mod δίνει αποτέλεσμα πραγματικού τύπου.

2.12  Ερωτήσεις του τύπου Σωστό-Λάθος Σ   Λ 
Σ   Λ 
1. Αφού ισχύει η συνθήκη (Α+ Β) / 2 = Α/ 2 + Β / 2, τότε ισχύει και η συνθήκη:
(Α + Β) DIV 2 = Α DIV 2 + Β DIV 2

2. Πρόγραμμα είναι ένας αλγόριθμος εκφρασμένος σε κατανοητή από τον υπο-
λογιστή μορφή.

28 2 - βασικα στοιχεια αλγορίθμων

3. Στο δεξί τμήμα μιας εντολής εκχώρησης κάποια μεταβλητή μπορεί να εμφανί- Σ   Λ 
ζεται περισσότερες από μία φορές. Σ   Λ 
Σ   Λ 
4. Μια σταθερά μπορεί να χρησιμοποιηθεί στο αριστερό ή στο δεξί τμήμα μιας Σ   Λ 
εντολής εκχώρησης. Σ   Λ 

5. Σε μια αλφαριθμητική τιμή μπορεί να περιλαμβάνονται και οι χαρακτήρες 0-9. Σ   Λ 
Σ   Λ 
6. Οι τελεστές div, mod δεν μπορούν να χρησιμοποιηθούν σε πραγματικούς Σ   Λ 
αριθμούς. Σ   Λ 
Σ   Λ 
7. Στο διάγραμμα ροής, το Διάβασε συμβολίζεται με ορθογώνιο παραλληλό- Σ   Λ 
γραμμο. Σ   Λ 
Σ   Λ 
8. Μια αλφαριθμητική μεταβλητή δεν μπορεί να λάβει τις τιμές "Αληθής" ή
"Ψευδής", καθώς σε αυτή την περίπτωση θα έπρεπε να αποτελεί λογική μετα-
βλητή.

9. Σε ένα διάγραμμα ροής το ορθογώνιο παριστάνει έναν υπολογισμό.

10.  Το πλάγιο παραλληλόγραμμο σε ένα διάγραμμα ροής δηλώνει διαδικασία ει-
σόδου ή εξόδου.

11.  Τα λεκτικά 'ΑΛΗΘΗΣ' και 'ΨΕΥΔΗΣ' είναι αλφαριθμητικές σταθερές.

12.  Για να εισάγουμε δεδομένα στην ψευδογλώσσα από το πληκτρολόγιο χρησι-
μοποιούμε την εντολή Δεδομένα.

13.  Οι συμβολικές σταθερές δηλώνονται ξεχωριστά στην αρχή ενός προγράμμα-
τος σε ΓΛΩΣΣΑ.

14.  Σε μια μεταβλητή πραγματικού τύπου μπορούμε να εκχωρήσουμε το αποτέ-
λεσμα ακέραιας αριθμητικής παράστασης.

15.  Η μεταβλητή ενός προγράμματος καταλαμβάνει συγκεκριμένο χώρο στη
μνήμη του υπολογιστή.

2.13  Ερωτήσεις του τύπου Σωστό-Λάθος Σ   Λ 

1. Στη ΓΛΩΣΣΑ ο χαρακτήρας είναι ένας τύπος δεδομένων. (Εξετάσεις 2016) Σ   Λ 
Σ   Λ 
2. Με τον όρο σταθερές αναφερόμαστε σε προκαθορισμένες τιμές που παραμέ-
νουν αμετάβλητες σε όλη τη διάρκεια της εκτέλεσης του προγράμματος. Σ   Λ 
Σ   Λ 
(Εξετάσεις 2016) Σ   Λ 

3. Η εντολή Διάβασε αποδίδει τιμές σε μεταβλητές με τη χρήση εκφράσεων.

4. Η έλλειψη είναι ένα γεωμετρικό σχήμα που χρησιμοποιείται στην αρχή και
στο τέλος ενός διαγράμματος ροής.

5. Η εντολή Διάβασε είναι εκτελεστέα εντολή.

6. Η τιμή 'ψευδής' αποτελεί λογική σταθερά.

Ενοτητα: δομη ακολουθιασ 29

Β. Δίνονται οι παρακάτω αριθμητικές εκφράσεις σε ΓΛΩΣΣΑ:

α. ((Α_Τ(x) - HM(θ)) / (Τ_Ρ((x ^ 2) + 5))) β. (2 * x + ((3 * (x + 1)) / (y ^ 2 + 1)) - Ε(x))

Λαμβάνοντας υπόψη την ιεραρχία των αριθμητικών πράξεων, να ξαναγράψετε τις εκφράσεις

αυτές παραλείποντας όλες τις παρενθέσεις που δεν είναι απαραίτητες. (Εξετάσεις 2015)

Γ. Ο μαθηματικός τύπος x1,2 = -b! b 2- 4ag υπολογίζει τις δύο ρίζες μιας δευτεροβάθμιας
2a

εξίσωσης. Να γράψετε σε ΓΛΩΣΣΑ τις εντολές που κωδικοποιούν τον αντίστοιχο υπολογισμό

των ριζών αυτών. (Εξετάσεις 2016)

2.21  Επιλέξτε από τα παρακάτω όσα θεωρείτε κατάλληλα.

1. Τα χρησιμοποιούμενα γεωμετρικά σχήματα για την αναπαράσταση των διαγραμμάτων ροής
είναι τα εξής:

α. έλλειψη β. ρόμβος γ. ορθογώνιο δ. κύκλος

ε. τραπέζιο στ. πλάγιο παραλληλόγραμμο ζ. σφαίρα

2. Τα είδη μεταβλητών που υποστηρίζει ένας αλγόριθμος σε ψευδογλώσσα είναι:
α. αριθμητικές β. πραγματικές γ. μιγαδικές
δ. αλφαριθμητικές ε. ημερομηνίες στ. λογικές

3. Ποια από τα παρακάτω είναι δεκτά ως ονόματα σταθερών: γ. 1ΣΤΟΙΧΕΙΟ
α. Α β. Στοιχείο1 στ. ΤΑΧΥΤΗΤΑ
δ. Φύλλο μαθητή ε. Τιμή-σε-$

4. Αν α = 3, β = 2 και γ = 5, ποια από τις παρακάτω εντολές θα έχει ως συνέπεια την έξοδο
«3+2=5» ;

α. Εμφάνισε 3 + 2 = 5 β. Εμφάνισε 3, "+2", "=", γ
γ. Εμφάνισε α, "+", β, "=", γ δ. Εμφάνισε "α", "+", β, "=", γ
ε. Εμφάνισε "3", "+", β, "=", 5 στ. Εμφάνισε α, "+", 2, "=", "γ"
ζ. Εμφάνισε "3+2=5"

5. Να γράψετε το γράμμα α, β, γ, δ των επιλογών στο παρακάτω διάγραμμα και δίπλα τον αντί-
στοιχο αριθμό 1, 2, 3. (Σημειώνεται ότι ένας αριθμός μπορεί να χρησιμοποιηθεί περισσότερες
από μία φορές.)

(Τράπεζα Θεμάτων Β´ Λυκείου)

2.22  Να τοποθετήσετε τα παρακάτω στην ορθή σειρά.

1. α. z ← x * y β. Διάβασε x, y
γ. Εκτύπωσε z

Ενοτητα: δομη ακολουθιασ 35

5. Μεταβλητή 6. Ημιδομημένο
7. Πραγματικός τύπος δεδομένων 8. Σταθερά
9. Αδόμητο 10. Καθοριστικότητα
11. Άλυτο 12. Ανοικτό

Να γράψετε ποιες από τις παραπάνω έννοιες:

α. είναι στοιχεία μιας γλώσσας προγραμματισμού.

β. ανήκουν σε κατηγορίες προβλημάτων. (Εξετάσεις 2001)

2.26  Κατανόηση δήλωσης μεταβλητών

1. Τι τύπο θα δηλώσει η μεταβλητή κ, σε κάθε περίπτωση; (Τα Α, Β είναι ακέραιες μεταβλητές.)

1. κ ← (Α + Β) / 2 2. κ ← (Α + Β) DIV 2 3. κ ← Α_Μ(Α + Β) / 2

4. κ ← Α_Μ((Α + Β) / 2) 5. κ ← ΨΕΥΔΗΣ 6. κ ← "ΨΕΥΔΗΣ"

7. κ ← 123 8. κ ← "123" 9. κ ← Τ_Ρ(Α_Μ(κ))

10.  κ ← Α_Μ(Τ_Ρ(κ)) 11.  κ ← 5.0 12.  κ ← Τ_Ρ(Α_Μ(6556))

13.  κ ← ΗΜ(88) 14.  κ ← '2017-2' 15.  κ ← 1.43 * Α_Μ(43.32)

16.  κ ← 5 ^ (1 / 2)

ΠΡΟΓΡΑΜΜΑ Επεξεργασία
ΜΕΤΑΒΛΗΤΕΣ

_____________________

ΑΡΧΗ

2. Πώς πρέπει να δηλωθούν οι μεταβλητές x, y, z, w, ΔΙΑΒΑΣΕ x
στο διπλανό πρόγραμμα; y <- Α_Μ(x)
z <- y MOD 7

ΓΡΑΨΕ x, y, z

w <- x * y / z
ΓΡΑΨΕ w

ΤΕΛΟΣ_ΠΡΟΓΡΑΜΜΑΤΟΣ

2.27  Ερωτήσεις αντιστοίχισης

Να αντιστοιχίσετε τα στοιχεία της στήλης Α με τα στοιχεία της στήλης Β.

1. Στήλη Α Στήλη Β

(Δεδομένα) (Τύποι δεδομένων)

1.  Ύψος εφήβου α.  Ακέραιος

2.  Επώνυμο μαθητή β.  Πραγματικός

3.  Αριθμός επιβατών γ.  Αλφαριθμητικός -
σε αεροπλάνο συμβολοσειρά

δ.  Λογικός (Εξετάσεις 2000)

38 2 - βασικα στοιχεια αλγορίθμων

αχ Έλεγχος Οθόνη
5 Αληθής
8, 5, Αληθής
8 %α, 8
α+χ

2.49  Να γραφεί σε μορφή ψευδοκώδικα το διπλανό διά-

γραμμα ροής. Ποιος είναι ο πίνακας τιμών των μεταβλητών
X και Y αν από τον χρήστη εισαχθούν οι τιμές:

Α. α = 5 και β = -2 Β. α = 15 και β = 3

Λύση

Τα γεωμετρικά σύμβολα που μπορούμε
να χρησιμοποιήσουμε για το διάγραμμα
ροής είναι:

Η διαδικασία δημιουργίας του διαγράμματος ροής είναι απλή:
Μεταφέρουμε κάθε εντολή της κωδικοποίησης στο αντίστοιχο
γεωμετρικό σχήμα εντός του οποίου γράφουμε την εντολή που
αντιστοιχεί. Ξεκινάμε πάντα με την έλλειψη Αρχή και κλείνουμε
με την έλλειψη Τέλος. Εκτενέστερη αναφορά θα υπάρξει στην
επόμενη ενότητα, στη δομή επιλογής.

Αλγόριθμος Μετατροπή Α. α = 5 και β = -2. Ο πίνακας τιμών θα είναι:
Διάβασε α, β
Χ ← α mod 2 X Y Οθόνη
Y←2*α+β^3 12
Χ←Y*X 2 1 2, 1
Y ← (Y div X) ^ 2
Εκτύπωσε Χ, Υ Β. α = 15 και β = 3. Ο πίνακας τιμών θα είναι:
Τέλος Μετατροπή
X Y Οθόνη
1 57
57 1 57, 1

Ενοτητα: δομη ακολουθιασ 55

Ενότητα: Δομή ακολουθίας

3 Κωδικοποίηση αλγορίθμων:
Ψευδοκώδικας και ΓΛΩΣΣΑ

Παράγραφοι 2.4 και 2.4.1 βιβλίου μαθητή
Κεφάλαιο 7 βιβλίου μαθητή

Ασκήσεις λυμένες

3.1  Να γραφεί αλγόριθμος εκφρασμένος σε ψευδογλώσσα ο οποίος θα διαβάζει

τρεις αριθμούς και θα εμφανίζει το άθροισμα, το γινόμενο και τον μέσο όρο τους.
Λύση

Κάθε λύση διακρίνεται σε 3 τμήματα:

• Το πρώτο μας μέλημα σε κάθε άσκηση είναι, αφού κατανοήσου-
με το πρόβλημα, να πραγματοποιήσουμε καθορισμό απαιτήσεων, δηλαδή να καθορίσουμε
ποια είναι τα δεδομένα [γνωστά στοιχεία – αυτά που θα εισαγάγει ο χρήστης και αυτά που εί-
ναι γνωστά στον αλγόριθμο (για παράδειγμα: σταθερές τιμές)] και ποια τα αποτελέσματα
(ζητούμενα – αυτά που πρέπει να υπολογίσει ο αλγόριθμος και να τα επικοινωνήσει στον
χρήστη).
Στον συγκεκριμένο αλγόριθμο η είσοδος είναι τρεις (πραγματικοί) αριθμοί, άρα η πρώτη
εντολή είναι η εντολή εισόδου Διάβασε. Κάθε στοιχείο δεδομένου εισόδου αντιστοιχίζεται
σε μια μεταβλητή. Γενικά, πρέπει να φροντίζουμε να ονομάζουμε τις μεταβλητές με τέτοιον
τρόπο, ώστε να γίνεται εύκολα αντιληπτός ο σκοπός που εξυπηρετούν στον αλγόριθμο.
• Στη συνέχεια, ακολουθούν οι εντολές επεξεργασίας των μεταβλητών αυτών, ο υπολογι-
σμός του αθροίσματος, του γινομένου και του μέσου όρου με κατάλληλες εντολές εκχώρη-
σης τιμής. Συνήθως σε ένα πρόβλημα το τμήμα της επεξεργασίας μπορεί να αναλυθεί σε
απλούστερα υποπροβλήματα (διαδικασία ανάλυσης). Στο μάθημά μας συνήθως θα επεξεργα-
ζόμαστε αριθμητικά στοιχεία (ακέραιους ή πραγματικούς αριθμούς) και σπανιότερα αλφα-
ριθμητικά (χαρακτήρες). Υπάρχουν ακόμη οι λογικές μεταβλητές, με εξειδικευμένη χρήση.
• Οι εντολές εκτελούνται σειριακά, όπως παρατίθενται στον αλγόριθμο.

61

• Πάντοτε στην ψευδογλώσσα ξεκινάμε με τη λέξη Αλγόριθμος και ακολουθεί το όνομα
του αλγορίθμου. Το όνομα ακολουθεί τους ίδιους κανόνες με το όνομα μιας μεταβλητής. Επι-
πλέον, δεν μπορεί να χρησιμοποιείται το ίδιο όνομα για μια μεταβλητή και για τον αλγόριθ-
μο. Η λέξη Αλγόριθμος, καθώς και όλες οι λέξεις που είναι έντονα γραμμένες καλούνται δε-
σμευμένες. Επιτελούν συγκεκριμένο σκοπό και δεν επιτρέπεται άλλη χρήση. Προσοχή πρέ-
πει να δίνεται και στους κανόνες χρήσης τους (σύνταξη).

• Για τη χρησιμοποίηση της τιμής κάποιας μεταβλητής πρέπει οπωσδήποτε να έχει δοθεί τι-
μή σ’ αυτή τη μεταβλητή, είτε με εντολή εκχώρησης είτε με είσοδο δεδομένων από τον χρή-
στη. Πιο πρακτικά, μπορούμε να πούμε πως δεν μπορούμε να χρησιμοποιήσουμε μια μετα-
βλητή στο δεξί τμήμα μιας εντολής εκχώρησης ή σε μια εκτύπωση αν προηγουμένως δεν έχει
λάβει τιμή στον αλγόριθμο – αρχικοποίηση.

• Στο τέλος, πραγματοποιείται η έξοδος του αλγορίθμου με την έξοδο των αποτελεσμάτων.
Μπορεί οι εντολές Εκτύπωσε ή Εμφάνισε να εμπλουτίζονται με κατάλληλα μηνύματα, ώστε
να γίνεται πιο κατανοητό το στοιχείο εξόδου. Χωρίς μηνύματα ο χρήστης που εκτελεί τον αλ-
γόριθμο παρακολουθώντας μόνο την οθόνη δεν μπορεί να αντιληφθεί ποιο στοιχείο παρουσι-
άζεται. Τα μηνύματα εισάγονται σε διπλά εισαγωγικά ("μήνυμα"). Το κείμενο που ακολουθεί
το θαυμαστικό ( ! ) είναι σχόλιο και αγνοείται από τον αλγόριθμο.

• Γενικά, όταν η εκφώνηση αναφέρει ρητώς την ανάγνωση των δεδομένων από τον χρήστη,
τότε χρησιμοποιούμε την εντολή Διάβασε. Σε διαφορετική περίπτωση, για παράδειγμα όταν
η εκφώνηση αναφέρει «έστω μεταβλητή Ν που περιέχει το πλήθος αριθμών», τότε μπορούμε
στην ψευδογλώσσα να εισάγουμε την τιμή της μεταβλητής Ν στον αλγόριθμό μας με την
εντολή Δεδομένα. (Δείτε και σχετική ερώτηση.) Όμοια, για την έξοδο χρησιμοποιούμε τις
εντολές Εκτύπωσε (για αποστολή εκτύπωσης στον εκτυπωτή), Εμφάνισε (για εμφάνιση των
στοιχείων στην οθόνη) ή την εντολή Αποτελέσματα αν δεν υπάρχει αναφορά για εκτυπωτή
ή οθόνη, αλλά πρέπει να πραγματοποιηθεί έξοδος. (Δείτε και σχετική ερώτηση.)

• Σε έναν αλγόριθμο υπάρχουν δηλωτικές εντολές (όπως οι εντολές Αλγόριθμος, Τέλος)
και εκτελεστέες εντολές (όπως οι εντολές Διάβασε, Εμφάνισε).

Μετά την εκτέλεση του αλγορίθμου αυτής της άσκησης, η οθόνη του υπολογιστή στον οποίο
εκτελέστηκε θα έχει τη μορφή της παρακάτω εικόνας όταν α = 5, β = 7 και γ = 3.

Αλγόριθμος Υπολογισμοί
Διάβασε α, β, γ
! Για παράδειγμα: α = 5, β = 7, γ = 3
άθροισμα ← α + β + γ
γινόμενο ← α * β * γ
μέσος_όρος ← (α + β + γ) / 3
! Θα μπορούσε να είναι και άθροισμα / 3
Εμφάνισε " Το άθροισμα είναι ", άθροισμα
Εμφάνισε " Το γινόμενο είναι ", γινόμενο
Εμφάνισε "Ο μέσος όρος είναι ", μέσος_όρος
Τέλος Υπολογισμοί

62 3 - Κωδικοποιηση αλγοριθμων: Ψευδοκωδικας και ΓΛωΣΣΑ

3.2  Σύμφωνα με στατιστικές έρευνες, ο μαθηματικός τύπος που υπολογίζει το

«φυσιολογικό» ύψος ενός ανθρώπου σε συνάρτηση με το βάρος του παρουσιάζεται

στην ακόλουθη σχέση:

Ύψος = 0.95 $b 2.3 $ B1row + 70l + 3
2

όπου το βάρος εκφράζεται σε κιλά και το ύψος σε εκατοστά. Να αναπτυχθεί αλγό-

ριθμος εκφρασμένος σε ΓΛΩΣΣΑ που θα διαβάζει το βάρος ενός ανθρώπου και θα

υπολογίζει και θα εκτυπώνει το «φυσιολογικό» ύψος του. Στη συνέχεια, να διαβά-

ζεται το ύψος του ανθρώπου αυτού και να εμφανίζεται η διαφορά από το φυσιολο-

γικό ύψος. Τέλος, να εμφανίζεται ο Δείκτης Μάζας Σώματος (ΔΜΣ) αυτού του αν-
( )θρώπου
δίνεται ότι ο ΔΜΣ = b1row .
6cow 2

Λύση

Η ανάπτυξη προγράμματος σε ΓΛΩΣΣΑ δεν διαφέρει πολύ από την
ανάπτυξη ψευδοκώδικα και από όσα παρουσιάστηκαν παραπάνω.
Κάποιες βασικές κατευθύνσεις είναι οι εξής:

• Χαράσσουμε τη δομή του προγράμματος: εκκίνηση με τη λέξη
ΠΡΟΓΡΑΜΜΑ και το όνομα του προγράμματος, ΣΤΑΘΕΡΕΣ, ΜΕ-
ΤΑΒΛΗΤΕΣ, ΑΡΧΗ, εντολές και ΤΕΛΟΣ_ΠΡΟΓΡΑΜΜΑΤΟΣ.

• Αναπτύσσουμε το τμήμα εντολών που επιλύει το πρόβλημα και το παραθέτουμε μετά τη
δεσμευμένη λέξη ΑΡΧΗ, μέχρι το ΤΕΛΟΣ_ΠΡΟΓΡΑΜΜΑΤΟΣ.

• Είτε το όνομα του προγράμματος παρατίθεται στο τέλος είτε όχι είναι σωστό. (Έγγραφο
ΙΕΠ, Α.Π. 226794 / Δ2 / 22-12-2017.)

Για την κωδικοποίηση σε ΓΛΩΣΣΑ το σχολικό διδακτικό πακέτο χρησιμοποιεί τις παρακάτω
συμβάσεις:

• Για τις εντολές (δεσμευμένες λέξεις) καλό χρησιμοποιεί κεφαλαίες λέξεις, ενώ για τα
υπόλοιπα (ονόματα μεταβλητών, προγράμματος κ.λπ.) πεζά ή κεφαλαία και ξεκινούν με κε-
φαλαίο γράμμα. Οι κανόνες ονοματολογίας είναι ίδιοι μ’ αυτούς που ισχύουν στην ψευδο-
γλώσσα.

• Η μόνη εντολή εισόδου σ’ ένα πρόγραμμα είναι η ΔΙΑΒΑΣΕ, η οποία αντικαθιστά τις
εντολές Διάβασε και Δεδομένα της ψευδογλώσσας.

• Η μόνη εντολή εξόδου σ’ ένα πρόγραμμα είναι η ΓΡΑΨΕ, η οποία αντικαθιστά τις εντο-
λές Εκτύπωσε, Εμφάνισε και Αποτελέσματα της ψευδογλώσσας. Για τα μηνύματα χρησι-
μοποιούνται μονά εισαγωγικά ( ' ) και όχι διπλά ( " ) όπως στην ψευδογλώσσα.

• Συνήθως, πριν τις εντολές εισόδου, τοποθετούνται μηνύματα προτροπής του τύπου 'Δώ-
σε τιμή' που περιγράφουν το στοιχείο που αναμένεται.

• Για την εντολή εκχώρησης τιμής χρησιμοποιείται το σύμβολο <- αντί του ←. Για την
υποδιαστολή χρησιμοποιείται η τελεία, ενώ στην ψευδογλώσσα το κόμμα.

• Αν κάποια εντολή δεν χωράει σε μια γραμμή και συνεχίζεται στην επόμενη, τότε ο πρώ-
τος χαρακτήρας της δεύτερης γραμμής είναι το &.

Ενοτητα: δομη ακολουθιασ 63

Σε αυτό το σημείο θα πρέπει να σχολιαστεί η διαφοροποίηση μετα-
ξύ ψευδογλώσσας και ΓΛΩΣΣΑΣ. (Πριν διαβάσεις το παρακάτω
κείμενο μελέτησε τον σχετικό πίνακα στο οπισθόφυλλο του παρό-
ντος βιβλίου.) Πολλές φορές από βιασύνη, αστοχία ή λανθασμένη
θεώρηση του μαθήματος γίνεται διάκριση σε «αλγόριθμο» και
«πρόγραμμα».

Σύμφωνα με το βιβλίο μαθητή, ένας από τους 4 τρόπους αποτύπωσης αλγορίθμων είναι η κω-
δικοποίηση, εκφρασμένη είτε σε ψευδοκώδικα είτε σε κάποια γλώσσα προγραμματισμού.

Συνεπώς, όταν μια άσκηση ζητήσει την επίλυση προβλήματος με αλγόριθμο, δεν εννοεί ψευ-
δοκώδικα, αλλά οποιαδήποτε αποδεκτή μορφή αλγορίθμου (ακόμη και διάγραμμα ροής). Βε-
βαίως, οι οδηγίες διδασκαλίας του μαθήματος της ΑΕΠΠ από το 2015 αναφέρουν ότι η πα-
ρουσίαση αλγορίθμων θα πραγματοποιείται στη γλώσσα προγραμματισμού ΓΛΩΣΣΑ.

Συνεπώς, όποτε ζητείται η ανάπτυξη αλγορίθμου η απάντηση εκφράζεται σε ΓΛΩΣΣΑ, εκτός
κι αν η εκφώνηση αναφέρει διαφορετικά. Οι συμβάσεις που χρησιμοποιεί το διδακτικό πακέ-
το για την κωδικοποίηση σε ΓΛΩΣΣΑ αναλύθηκαν παραπάνω.

Εγείρεται λοιπόν το ερώτημα κατά πόσον είναι λανθασμένη η χρήση πεζών γραμμάτων στις
εντολές. Το βιβλίο μαθητή δεν αναφέρει ότι δεν επιτρέπεται, άλλωστε η ΓΛΩΣΣΑ δεν είναι
case sensitive γλώσσα. Η ίδια η επιτροπή εξετάσεων έχει σηματοδοτήσει την απαγκίστρωση
από τέτοιες προσεγγίσεις χρησιμοποιώντας κατά καιρούς πεζά γράμματα στις εντολές, το
σύμβολο του βέλους στην εκχώρηση, ακόμη και την εντολή Εμφάνισε στη ΓΛΩΣΣΑ (εξετά-
σεις 2005). Η εμπειρία από τα βαθμολογικά κέντρα όσον αφορά τη διόρθωση της ΑΕΠΠ εί-
ναι πως το μάθημα έχει προχωρήσει στο επόμενο βήμα.

Σε αυτό το βιβλίο για την κωδικοποίηση αλγορίθμων σε ΓΛΩΣΣΑ (ή αλλιώς προγραμμάτων
σε ΓΛΩΣΣΑ) θα χρησιμοποιούνται οι συμβάσεις του σχολικού διδακτικού πακέτου για ομοι-
ογένεια, όχι γιατί είναι υποχρεωτικές.

Στο παρακάτω σχήμα αποτυπώνεται οπτικά η ποιοτική σύγκριση ψευδοκώδικα και ΓΛΩΣΣΑΣ.

ΠΡΟΓΡΑΜΜΑ όνομα
_ _
ΣΤΑΘΕΡΕΣ b Τμήμα b
b
………… ` δήλ ωσης b Τμήμα δηλώσεων
b b
………… a σταθερών b
`
ΜΕΤΑΒΛΗΤΕΣ _ b
b b
ΑΚΕΡΑΙΕΣ: ……… b Τμήμα b
b
ΠΡΑΓΜΑΤΙΚΕΣ: ……… ` δήλωσης b
b a
ΧΑΡΑΚΤΗΡΕΣ: ……… b μεταβλητών
ΛΟΓΙΚΕΣ: ………
a

Z Αλγόριθμος όνομα ΑΡΧΗ _

Τμήμα ] εντολές εντολές b Τμήμα
εντολών [ ………………  ……………… ` εντολών
] ……………… b
\ ……………… a

Τέλος όνομα ΤΕΛΟΣ_ΠΡΟΓΡΑΜΜΑΤΟΣ

Ενοτητα: δομη ακολουθιασ 65

Σύμφωνα με τη θεώρηση του παρόντος βιβλίου, η μόνη ουσιαστική διάκριση/διαφορά μετα-
ξύ των δυο τρόπων αποτύπωσης είναι η δήλωση των δεδομένων στη ΓΛΩΣΣΑ, ενώ θα επι-
μείνει στην ορθή χρήση εισαγωγικών και εντολών συμβαδίζοντας με το ύφος, το πλαίσιο και
τους στόχους του μαθήματος. Έτσι, στη ΓΛΩΣΣΑ δεν ορίζονται οι εντολές: Δεδομένα, Απο-
τελέσματα, Αντιμετάθεσε, Εμφάνισε και Εκτύπωσε.

Σε διάφορα σημεία του βιβλίου θα αποτυπώνονται αλγόριθμοι σε ψευδογλώσσα, διάγραμμα
ροής ή φυσική γλώσσα κατά βήματα, καθώς θεωρούνται γνωστά στους μαθητές από το σχε-
τικό μάθημα της Β΄ Λυκείου και μπορεί να ζητηθούν στην εξέτασή τους.

3.3  Να αναπτυχθεί πρόγραμμα που θα διαβάζει τις τιμές των x, y και θα εκτυ-

πώνει την τιμή του z, όπου:

Λύση z= x-y + 3 (x + y) + `x + 3 y 2 j4
4 5

ΠΡΟΓΡΑΜΜΑ Υπολογισμός
ΜΕΤΑΒΛΗΤΕΣ
ΠΡΑΓΜΑΤΙΚΕΣ: x, y, z
ΑΡΧΗ
ΔΙΑΒΑΣΕ x, y
! Η εκφώνηση δεν αναφέρει ότι είναι ακέραια, άρα θεωρούμε ότι λαμβάνουν
! πραγματικές τιμές (γενική περίπτωση)
z <- (x - y) / 4 + 3 * (x + y) / 5 + (x + y ^ (2 / 3)) ^ 4
! Προφανώς πραγματική τιμή
ΓΡΑΨΕ ' H τιμή του z είναι ', z
ΤΕΛΟΣ_ΠΡΟΓΡΑΜΜΑΤΟΣ

3.4  Ο νόμος του Νεύτωνα για τη βαρύτητα λέει ότι κάθε σώμα στο σύμπαν έλκει

κάθε άλλο σώμα με δύναμη που δίνεται από τον τύπο:

F = G $ m1 $ m2
r2

όπου m1 και m2 είναι οι μάζες των δύο σωμάτων (σε κιλά), r η απόσταση μεταξύ
τους (σε μέτρα) και G είναι η παγκόσμια βαρυτική σταθερά. Να αναπτυχθεί πρό-

γραμμα που θα διαβάζει τις δύο μάζες, την απόσταση μεταξύ τους και θα υπολογί-
ζει και θα εκτυπώνει τη δύναμη. Δίνεται ότι G = 6,67 # 10-11 Nm2 Kg-2.

Λύση

ΠΡΟΓΡΑΜΜΑ Βαρύτητα
ΣΤΑΘΕΡΕΣ
G = 6.67 * 10 ^ (-11)
ΜΕΤΑΒΛΗΤΕΣ
ΠΡΑΓΜΑΤΙΚΕΣ: m1, m2, r, F

66 3 - Κωδικοποιηση αλγοριθμων: Ψευδοκωδικας και ΓΛωΣΣΑ

ιβ.  Α_Τ(α - β) >= 3
ιγ.  κ = Α_Μ(κ)
ιδ.  α mod 2 = 1 και α mod 5 = 0
ιε.  α * β < 0
ιστ.  (α >= 10 και α <= 99) και α mod 2 = 0

Λύση

Δεν επιτρέπεται σε έναν αλγόριθμο να γραφεί διπλή ανισότητα.
Εκτός από τους αριθμητικούς τελεστές που παρουσιάστηκαν στο
κεφάλαιο 4, διακρίνουμε άλλα δύο είδη τελεστών για τη διατύπωση
λογικών συνθηκών:
• Συγκριτικοί τελεστές: =, <>, >, >=, <, <=

• Λογικοί τελεστές: και, ή, όχι

Στα ερωτήματα ια - ιστ αποτυπώνονται κάποιες από τις βασικές ερωτήσεις που θα χρησιμο-
ποιηθούν σε πλήθος ασκήσεων.
Αποτυπώνεται ο τρόπος αξιοποίησης του mod για τον έλεγχο πολλαπλάσιων αριθμών και άρ-
τιων/περιττών.

Ενοτητα: δομη επιλογησ 103

6.26  Δίνονται οι τιμές των μεταβλητών Α=8, Β=3, 6.30  Να συμπληρώσετε τον παρακάτω πίνακα με

Γ = -2 και Δ= -1. Να χαρακτηρίσετε καθεμία από τις σωστές λογικές τιμές.
τις παρακάτω εκφράσεις αν είναι ΑΛΗΘΗΣ ή
ΨΕΥΔΗΣ. X Y Όχι X X και Y
Αληθής Αληθής Ψευδής Αληθής
α. A MOD B >= A_T(Γ) Αληθής Ψευδής
Ψευδής Αληθής 1 2
β. Α * 2 - Β ^ 2 <= (Γ + Α) / Δ Ψευδής Ψευδής Αληθής 3
Αληθής 4
γ. Β DIV (A + Γ) <> 0

δ. Α * Γ - Δ >= -(17 ΜΟD A) (Εξετάσεις 2009) Να γράψετε τον αριθμό που αντιστοιχεί στο κενό
ε. B * Δ <= Α * Γ

6.27  Αν η μεταβλητή Α έχει την τιμή 7, η μετα- κελί του πίνακα και δίπλα τη σωστή ένδειξη Αλη-

βλητή Β έχει την τιμή 5 και η μεταβλητή Γ την τιμή θής ή Ψευδής. (Τράπεζα Θεμάτων Β΄ Λυκείου)
2, να υπολογίσετε τις λογικές τιμές των παρακάτω
εκφράσεων: 6.31  Να συμπληρώσετε τον παρακάτω πίνακα

1. Α > Β αληθείας.

2. ΟΧΙ (Β > Α) Α Β (ΟΧΙ Α) ((ΟΧΙ Α) ΚΑΙ Β) Ή
ΚΑΙ (ΟΧΙ Β) (Α ΚΑΙ (ΟΧΙ Β))
3. Α < Γ
Ψευδής Ψευδής
4. Γ <= Β
Ψευδής Αληθής
5. (Α > Β) ΚΑΙ (Α < Γ)
Αληθής Ψευδής
6. ((Α < Β) ΚΑΙ (Α < Γ)) Ή (Γ <= Β)
Αληθής Αληθής
7. (Α < Β) ΚΑΙ ((Α < Γ) Ή (Γ <= Β))
(Εξετάσεις 2008)
Να γράψετε τους αριθμούς 1 έως 7 και δίπλα σε κά-
θε αριθμό την αντίστοιχη τιμή. (Εξετάσεις 2010) 6.32  Να συμπληρώσετε τα κενά στον παρακάτω

6.28  Δίνεται το παρακάτω τμήμα αλγορίθμου: πίνακα αληθείας.

Ζ ← ΨΕΥΔΗΣ Λογικές Λογικές
μεταβλητές εκφράσεις
Χ ← ΑΛΗΘΗΣ
((ΟΧΙ Α) Ή Β) (ΟΧΙ Α) ΚΑΙ
Ψ ← ΨΕΥΔΗΣ Α Β ΚΑΙ Β (ΟΧΙ (Β Ή Α))

Α ← Χ ΚΑΙ (Ψ Ή Ζ) Αληθής Αληθής

Β ← (ΟΧΙ Α) ΚΑΙ (ΟΧΙ Ζ) Ψευδής Ψευδής

Να γράψετε τις τιμές των μεταβλητών Α και Β μετά Ψευδής Αληθής

την εκτέλεση του παραπάνω τμήματος αλγορίθμου. (Εξετάσεις 2016)
(Εξετάσεις 2008)

6.29  Να γράψετε τον αριθμό καθεμίας από τις 6.33  Τι θα εμφανίσει το παρακάτω τμήμα αλγο-

παρακάτω εκφράσεις και δίπλα τη λογική τιμή στην ρίθμου αν δοθούν ως είσοδος οι τιμές:

οποία αποτιμάται (Αληθής ή Ψευδής). Θεωρήστε α. 5, 11 β. 25, 24
ότι α = 100, β = 10 και γ = -90.
ΔΙΑΒΑΣΕ Χ, Υ
α. α = β
ΓΡΑΨΕ 'Χ', Υ, 'Χ + Υ', Χ + Υ
β. α ! γ

γ. β = (α + γ) ΓΡΑΨΕ 'Χ > Υ', Χ > Υ
δ. α > (β + γ)
(Τράπεζα Θεμάτων Β΄ Λυκείου) ΓΡΑΨΕ Τ_Ρ(Χ + Υ), Α_Τ(Χ - Υ)

Ενοτητα: δομη επιλογησ 109

Κριτήριο αξιολόγησης 3

Στα κεφάλαια 6 έως και 10

Θέμα 1ο

Α. Να χαρακτηρίσετε καθεμιά από τις επόμενες προτάσεις ως σωστή (Σ) ή λανθασμένη (Λ).

1. Οι εντολές μιας απλής δομής επιλογής μπορούν και να μην εκτελεστούν. Σ Λ
Σ Λ
2. Εντός των δομών επιλογής δεν επιτρέπεται η χρήση εντολών εξόδου. Σ Λ
Σ Λ
3. Η συνθήκη x <> 4 ή x <> 8 είναι πάντα αληθής.
4. Η δομή σύνθετης επιλογής ελέγχει πάντοτε μια σύνθετη λογική έκφραση. Σ Λ

5. Στη δομή σύνθετης επιλογής υπάρχει περίπτωση να μην εκτελεστεί κανένα Σ Λ
από τα δύο μπλοκ εντολών. Μονάδες 12
6. Για τον υπολογισμό του μέσου όρου τριών αριθμών είναι απαραίτητο να χρη-
σιμοποιηθεί η δομή επιλογής.

x←A

Αν x mod 2 = 1 τότε

Αν x div 3 <> 4 τότε

Εμφάνισε "1"

Αλλιώς

Β. Δίνεται η διπλανή κωδικοποίηση. Ποια πρέπει να είναι η Εμφάνισε "2"
τιμή του Α, ώστε:
Τέλος_αν
α. να εμφανιστεί 2;
Αλλιώς
β. να εμφανιστεί 3;
Αν x div 3 = 2 τότε

Εμφάνισε "3"

Αλλιώς

Εμφάνισε "4"

Τέλος_αν

Τέλος_αν

Μονάδες 5

Γ. Δίνεται το διπλανό τμήμα εντολών. Να συμπληρώσετε Αν α > 5 τότε
τις 3 λογικές εκφράσεις, ώστε το επόμενο τμήμα εντολών να Αν β = 1 τότε
επιτελεί τις ίδιες ενέργειες με το διπλανό, θεωρώντας ότι οι εντολές_1
μεταβλητές α, β δεν αλλάζουν τιμή κατά την εκτέλεση των Αλλιώς
εντολών. εντολές_2

168 κριτηριο αΞιολογηςης 3

ταθέτει τη χρονιά αυτή. Έτσι, αν καταθέσει λιγότερα από 8.000 €, τότε του δίνει επιτόκιο 3%,

διαφορετικά του δίνει 5% για ολόκληρο το ποσό που έχει στην τράπεζα. Αν η παραπάνω διαδι-

κασία επαναληφθεί για τρία χρόνια, να αναπτύξετε πρόγραμμα που θα διαβάζει για κάθε χρόνο

το ποσό χρημάτων που καταθέτει ο υπάλληλος και θα εμφανίζει στο τέλος κάθε χρόνου τα συ-

νολικά χρήματα που έχει στην τράπεζα. Τέλος, θα εμφανίζει μήνυμα σχετικά με το αν μπορεί να

αγοράσει φτηνό ή ακριβό αυτοκίνητο, θεωρώντας πως μέχρι και το ποσό των 10.000 € το αυ-

τοκίνητο θεωρείται φτηνό. Μονάδες 20

Θέμα 4ο

Η τράπεζα Τενεούπολης για την ενίσχυση χρήσης πιστωτικών καρτών προσφέρει το πρόγραμμα
«Διπλασιάζω». Ο κάτοχος κάρτας συσσωρεύει πόντους στην κάρτα με τις αγορές που πραγμα-
τοποιεί χρησιμοποιώντας την. Έτσι, για κάθε ευρώ που πληρώνεται μέσω της κάρτας αποδίδε-
ται ένας πόντος. Μάλιστα, αν η αγορά γίνει σε συνεργαζόμενο κατάστημα, οι πόντοι που αποδί-
δονται στην κάρτα διπλασιάζονται. Τους πόντους αυτούς μπορεί να τους εξαργυρώσει με εκπτώ-
σεις στις αγορές του, μόνο στα συνεργαζόμενα καταστήματα, γλιτώνοντας 5% της αξίας των
αγορών του, με αφαίρεση 500 πόντων ανά συναλλαγή από τους πόντους της κάρτας.

Να αναπτύξετε αλγόριθμο σε ΓΛΩΣΣΑ που για κάτοχο πιστωτικής κάρτας της τράπεζας:

α. θα διαβάζει τους πόντους της κάρτας καθώς και το αν το κατάστημα αυτό είναι συνεργαζό-
μενο με την τράπεζα (απάντηση Ναι / Όχι)

β. θα διαβάζει το ποσό της πληρωμής που θέλει να πραγματοποιήσει με χρήση της κάρτας

γ. στην περίπτωση που η συναλλαγή πραγματοποιείται σε συνεργαζόμενο κατάστημα και αν οι
πόντοι της κάρτας το επιτρέπουν, θα διαβάζει την απάντηση του καταναλωτή στην ερώτηση αν
επιθυμεί εξαργύρωση πόντων και σε καταφατική απάντηση θα αποδίδει την έκπτωση και θα εμ-
φανίζει το νέο πληρωτέο ποσό

δ. θα εμφανίζει τους πόντους της κάρτας μετά την πραγματοποίηση της συναλλαγής.

Παρατήρηση: Οι πόντοι που αποδίδονται στην κάρτα είναι ακέραιοι και αποδίδονται αμέσως

στην κάρτα πριν την τυχόν έκπτωση. Στο πρόβλημα αυτό δεν μας απασχολεί η χρέωση της πι-

στωτικής κάρτας με το ποσό συναλλαγής, αλλά μόνο οι πόντοι της. Μονάδες 20

ΚΡΙΤΗΡΙΟ ΑΞΙΟΛΟΓΗΣΗΣ 3 171

ΠΡΟΓΡΑΜΜΑ Φαινόλες
ΜΕΤΑΒΛΗΤΕΣ
ΑΚΕΡΑΙΕΣ: λεπτά
ΑΡΧΗ
ΔΙΑΒΑΣΕ λεπτά
ΑΝ (λεπτά >= 30) ΚΑΙ (λεπτά <= 45) ΤΟΤΕ
ΓΡΑΨΕ 'Κίτρινο'
ΑΛΛΙΩΣ_ΑΝ (λεπτά >= 60) ΚΑΙ (λεπτά <= 85) ΤΟΤΕ
ΓΡΑΨΕ 'Πορτοκαλί'
ΑΛΛΙΩΣ_ΑΝ (λεπτά >= 110) ΚΑΙ (λεπτά <= 130) ΤΟΤΕ
ΓΡΑΨΕ 'Κόκκινο'
ΑΛΛΙΩΣ
ΓΡΑΨΕ 'Το χρώμα δεν έχει προσδιοριστεί'
ΤΕΛΟΣ_ΑΝ
ΤΕΛΟΣ_ΠΡΟΓΡΑΜΜΑΤΟΣ

Παρατήρηση
Για την αποφυγή των σύνθετων συνθηκών στους ελέγχους μπορεί να τροποποιηθεί ο πίνακας
και να σχηματιστούν διαδοχικά διαστήματα ως εξής (7 περιπτώσεις):

Χρόνος από την ανάμειξη Χρώμα διαλύματος
του διαλύματος
0 - 29 min Απροσδιόριστο
30 - 45 min Κίτρινο
46 - 59 min
60 - 85 min Απροσδιόριστο
86 - 109 min Πορτοκαλί
110 - 130 min
131 min και άνω Απροσδιόριστο
Κόκκινο

Απροσδιόριστο

11.21  Μια εταιρεία εμπορεύεται μπλουζάκια. Για την προσέλκυση νέων πελα-

τών αποφάσισε να πραγματοποιήσει έκπτωση 10% στις πωλήσεις με συνολικό κό-
στος από 100 € μέχρι και 250 €. Αν το συνολικό κόστος είναι μεγαλύτερο από
250 €, τότε το ποσοστό της έκπτωσης είναι 17%. Να αναπτυχθεί πρόγραμμα που
θα διαβάζει την τιμή και την ποσότητα που παραγγέλθηκε και θα εκτυπώνει το τε-
λικό ποσό της πληρωμής, καθώς και το ποσό της έκπτωσης.

Λύση

Ο αλγόριθμος μπορεί να επιλυθεί πολύ πιο εύκολα -και σίγουρα
σωστά- αν σχηματίσουμε έναν πίνακα με περιγραφή όλων των πε-

ριπτώσεων. Έτσι, θα φανεί και η πρώτη περίπτωση - παγίδα.

190 11 - Η δομή πολλαπλής επιλογής

Κόστος Χ (σε €) Ποσοστό έκπτωσης (%)
0 <= Χ <= 100 0
100 < Χ <= 250 10
250 < Χ 17

Στην περιγραφή της εκφώνησης δεν περιγράφεται λεκτικά η μηδενική έκπτωση. Αποτελεί κρυ-
φή περίπτωση που πρέπει να καλυφθεί από την κωδικοποίηση. Προσοχή στη χρήση της πολλα-
πλής επιλογής με απλές λογικές εκφράσεις, γιατί τα διαστήματα πρέπει να είναι διαδοχικά.

ΠΡΟΓΡΑΜΜΑ Μπλουζάκια
ΜΕΤΑΒΛΗΤΕΣ
ΑΚΕΡΑΙΕΣ: ποσότητα
ΠΡΑΓΜΑΤΙΚΕΣ: τιμή, κόστος, έκπτωση, τελικό_ποσό
ΑΡΧΗ
ΔΙΑΒΑΣΕ τιμή, ποσότητα
κόστος <- τιμή * ποσότητα

ΑΝ κόστος <= 100 ΤΟΤΕ ΑΝ κόστος > 250 ΤΟΤΕ

έκπτωση <- 0 έκπτωση <- 0.17 * κόστος

ΑΛΛΙΩΣ_ΑΝ κόστος <= 250 ΤΟΤΕ ή ΑΛΛΙΩΣ_ΑΝ κόστος > 100 ΤΟΤΕ
έκπτωση <- 0.10 * κόστος εναλλακτικά έκπτωση <- 0.10 * κόστος

ΑΛΛΙΩΣ ΑΛΛΙΩΣ

έκπτωση <- 0.17 * κόστος έκπτωση <- 0

ΤΕΛΟΣ_ΑΝ ΤΕΛΟΣ_ΑΝ

τελικό_ποσό <- κόστος - έκπτωση
ΓΡΑΨΕ έκπτωση, τελικό_ποσό
ΤΕΛΟΣ_ΠΡΟΓΡΑΜΜΑΤΟΣ

11.22  Να αναπτυχθεί πρόγραμμα το οποίο:

α. Θα διαβάζει πρώτα έναν αριθμό α, στη συνέχεια θα εμφανίζει μενού επιλογών
και θα διαβάζει έναν από τους χαρακτήρες +, -, *, / ανάλογα με την πράξη που
θα εκτελέσει και τέλος έναν αριθμό β.

β. Θα εκτελεί την αντίστοιχη πράξη και θα εμφανίζει το αποτέλεσμα.

γ. Θα εκτυπώνει το μήνυμα «Λάθος πράξη» αν ως χαρακτήρας πράξης δοθεί άλ-
λο σύμβολο.
Λύση

Στην περίπτωση που κάποιο πρόβλημα
ζητά την εμφάνιση μενού επιλογών,
στις πρώτες εντολές του αλγορίθμου
παρατίθενται οι κατάλληλες εντολές

Ενοτητα: δομη επιλογησ 191

Ενότητα: Δομή επανάληψης

18 Απλές ασκήσεις κατανόησης
με δομές επανάληψης

Γνωστό / άγνωστο πλήθος επαναλήψεων, άθροισμα /
πλήθος τιμών, υπέρβαση ορίου, απλές σειρές

Ασκήσεις λυμένες

Η δομή ΟΣΟ

18.1  Να αναπτυχθεί κωδικοποίηση σε ψευδογλώσσα που θα εκτυπώνει τους δι‑

ψήφιους περιττούς ακεραίους.
Λύση
Η άσκηση πρέπει να εκτυπώσει τους αριθμούς 11, 13, 15, …, 97, 99. Θα χρησιμοποιήσουμε για
τον σκοπό αυτό τη δομή επανάληψης Όσο.

Η μεθοδολογία επίλυσης των ασκήσεων είναι η παρακάτω:
ΒΗΜΑ 1. Σχηματίζουμε τον σκελετό της επανάληψης διατυπώνο-
ντας τη συνθήκη που επιθυμούμε να εκπληρώνεται για τη συνέχειά
της.
ΒΗΜΑ 2. Φροντίζουμε να αρχικοποιήσουμε τη μεταβλητή που
συμμετέχει στη συνθήκη του βρόχου, πριν από αυτόν.

ΒΗΜΑ 3. Συμπληρώνουμε το τμήμα εντολών του βρόχου, ώστε να λειτουργεί σωστά, φρο-
ντίζοντας την εκπλήρωση του κριτηρίου της περατότητας.
ΒΗΜΑ 4. Συμπληρώνουμε τις εντολές που χρειάζονται για τον υπολογισμό των ζητούμενων
της άσκησης.
ΒΗΜΑ 5. Εκτελούμε μερικές επαναλήψεις με κατάλληλα δεδομένα, ώστε να επιβεβαιώσου-
με ότι ο αλγόριθμος πραγματικά υλοποιεί αυτό που ζητά η εκφώνηση.

Έτσι, αρχικά θα έχουμε: …
Όσο α <= 99 επανάλαβε
Η μεταβλητή α πρέπει να αρχικοποιηθεί με την τιμή 11, …
καθώς αυτή είναι η τιμή εκκίνησης. Στο εσωτερικό του Τέλος_επανάληψης
βρόχου η μεταβλητή αυτή πρέπει να αλλάζει τιμή (για να
τερματιστεί η επανάληψη).

279

Εφόσον επιθυμούμε να επιλέγονται οι περιττοί αριθμοί, α ← 11
η αύξηση του α θα είναι κατά 2. Όσο α <= 99 επανάλαβε

Με αυτόν τον τρόπο εξασφαλίζουμε ότι το α θα λάβει τις α←α+2
τιμές που ζητάει η εκφώνηση να εκτυπωθούν. Τέλος_επανάληψης
Αρκεί η προσθήκη μιας εντολής εκτύπωσης για την ολο-
κλήρωση της άσκησης. Ο πλήρης αλγόριθμος παρουσιά- Αλγόριθμος διψήφιοι
ζεται δίπλα. α ← 11
Όσο α <= 99 επανάλαβε
Εκτύπωσε α
α ← α + 2
Τέλος_επανάληψης
Τέλος διψήφιοι

Παρατηρήσεις:

• Η μεταβλητή α, που λαμβάνει συγκεκριμένες τιμές με προκαθο-
ρισμένο τρόπο, ονομάζεται μετρητής.

• Ο μετρητής α καθορίζει τη συνέχεια ή τον τερματισμό της επα-
νάληψης.

• Το πλήθος των επαναλήψεων είναι προκαθορισμένο σε αυτόν
τον αλγόριθμο (45 επαναλήψεις).

• Η συνθήκη ανάμεσα στα Όσο και επανάλαβε ονομάζεται και συνθήκη συνέχειας (όσο
ισχύει η επανάληψη συνεχίζεται).

• Αν λείψει η εντολή α ← α + 2, τότε εκτελούνται άπειρες επαναλήψεις και έτσι θα παρα-
βιαστεί το κριτήριο της περατότητας. Η μεταβλητή που συμμετέχει στη συνθήκη συνέχειας
πρέπει οπωσδήποτε να τροποποιείται εντός του βρόχου.

Με αλλαγή στην αρχικοποίηση του μετρητή, στη συνθήκη συνέχειας ή στην αύξηση εντός
του βρόχου, μπορούμε να εκτυπώσουμε όποιους αριθμούς επιθυμούμε.

Για παράδειγμα για τους αριθμούς 2, 1.9, 1.8, …, 0.1 θα α←2
χρησιμοποιήσουμε το διπλανό τμήμα αλγορίθμου. Όσο α > 0 επανάλαβε
Εκτύπωσε α
Χωρίς τη χρήση της δομής επανάληψης θα αναγκαζόμα- α ← α - 0.1
σταν να γράψουμε 45 φορές τις εντολές ώστε να εκτε- Τέλος_επανάληψης
λεστούν. Μετά την εκτέλεση της εντολής εκχώρησης η
ροή του αλγορίθμου επανέρχεται στην εντολή Όσο, σε
αντίθεση με όσα ισχύουν στις δομές ακολουθίας και επι-
λογής.

280 18 - Απλές ασκήσεις κατανόησης με δομές επανάληψης

Η απόδοση αρχικής τιμής σε μια μεταβλητή ονομάζεται αρχικοποίηση. Γενικός κανόνας εί-
ναι πως δεν μπορούμε να χρησιμοποιήσουμε μια μεταβλητή αν προηγουμένως δεν έχει αρχι-
κοποιηθεί.

Η δομή επιλογής μετά τον βρόχο εξασφαλίζει την ικανοποίηση της καθοριστικότητας. Υπάρχει
η περίπτωση να μη δόθηκε κανένας άρτιος αριθμός.

Αντίστοιχα θα χειριστούμε τη μεταβλητή υπολογισμού του γινομένου (αρχικοποίηση το 1).

Η τιμή ενός αθροιστή ή ενός μετρητή εκτυπώνεται ή αξιοποιείται
πάντα μετά τον βρόχο, αφού τότε έχει ολοκληρωθεί ο υπολογισμός
των επιθυμητών τιμών. Γενικά, δεν έχει νόημα η χρήση του μετρη-
τή μετά τον βρόχο.

Ωστόσο, η τελική του τιμή αναμένεται να είναι εκείνη που τερμάτι-
σε τον βρόχο.

18.8  Να αναπτυχθεί πρόγραμμα που θα διαβάζει 500 θετικούς ακεραίους και θα

εκτυπώνει το ποσοστό των αριθμών που είναι διψήφιοι. Επίσης, να εκτυπώνει τη
μέση απόκλιση των αριθμών που διαβάστηκαν από τον αριθμό 125.

Λύση

Ισχύει:

ποσοστό = 100 $ pl3uow stoixe4vn poy maw ikanopoio6n
pl3uow 5lvn tvn stoixe4vn

(Δείτε και άσκηση 4.4.)

Όταν καλούμαστε να υπολογίσουμε κάποιο ποσοστό, πρέπει να
υπολογίζουμε τον αντίστοιχο αριθμητή και παρονομαστή (το μέρος-
κομμάτι διά το όλον). Ο παρονομαστής συνήθως είναι το πλήθος των επαναλήψεων, ενώ για
τον αριθμητή αρκεί η χρήση ενός μετρητή και μιας δομής επιλογής για την καταμέτρηση των
περιπτώσεων που ικανοποιούν τις προϋποθέσεις.

Ένας μετρητής περιέχει δύο εντολές:

α. μηδενισμό πριν από την επανάληψη

β. αύξηση του μετρητή εντός του βρόχου (κατά ένα συνήθως).

ΠΡΟΓΡΑΜΜΑ Μελέτη
ΜΕΤΑΒΛΗΤΕΣ
ΑΚΕΡΑΙΕΣ: διψήφιοι, i, αριθμός, Σαπόκλιση
ΠΡΑΓΜΑΤΙΚΕΣ: ποσοστό, μέσηαπ
ΑΡΧΗ
διψήφιοι <- 0
Σαπόκλιση <- 0
ΓΙΑ i ΑΠΟ 1 ΜΕΧΡΙ 500
ΔΙΑΒΑΣΕ αριθμός
Σαπόκλιση <- Σαπόκλιση + Α_Τ(αριθμός - 125)
ΑΝ (αριθμός >= 10) ΚΑΙ (αριθμός <= 99) ΤΟΤΕ

Ενοτητα: δομη επαναληψησ 289

διψήφιοι <- διψήφιοι + 1
ΤΕΛΟΣ_ΑΝ
ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
ποσοστό <- 100 * διψήφιοι / 500
ΓΡΑΨΕ 'Ποσοστό διψήφιων ', ποσοστό
μέσηαπ <- Σαπόκλιση / 500
ΓΡΑΨΕ 'Μέση απόκλιση ', μέσηαπ
ΤΕΛΟΣ_ΠΡΟΓΡΑΜΜΑΤΟΣ

18.9  Να αναπτυχθεί πρόγραμμα που θα υπολογίζει και θα εκτυπώνει τα αθροί‑

σματα: S1 = 1+ 1 + 1 + 1 + f + 1 και S2 = 1 + 1 + 1 +f+ 1
Λύση 2 3 4 100 3 9 27 3 100

Για τον υπολογισμό του αθροίσματος χρησιμοποιούμε έναν αθροι-
στή (συνήθως επιλέγουμε μια μεταβλητή με το όνομα S που συμβο-
λίζει το άθροισμα). Ένας αθροιστής περιέχει δύο εντολές:

α. μηδενισμό πριν από την επανάληψη

β. αύξηση του αθροιστή εντός του βρόχου κατά την τιμή που απαι-
τείται. Χρησιμοποιούμε τη δομή Για, ώστε να δώσουμε στον με-
τρητή τις τιμές που πρέπει να προστεθούν.

Σε ασκήσεις αυτής της κατηγορίας πρέπει να ξεχωρίσουμε ποιο είναι το στοιχείο του αθροί-
σματος που αλλάζει και ποιο παραμένει αμετάβλητο.

• Στο πρώτο άθροισμα ο αριθμητής παραμένει σταθερός (είναι η μονάδα), ενώ ο παρονο-
μαστής μεταβάλλεται και παίρνει διαδοχικά τιμές τις 1, 2, 3, 4, …, 99, 100. Επομένως, θα
χρησιμοποιήσουμε τη δομή Για, ώστε να δημιουργήσουμε αυτές τις τιμές.

• Στο δεύτερο άθροισμα ο αριθμητής κάθε όρου είναι επίσης η μονάδα. Στον παρονομαστή
παρατηρούμε ότι υπάρχει μια δύναμη του 3. Ο εκθέτης παίρνει διαδοχικά τις τιμές 1, 2, 3,
4, …, 99, 100. Επομένως, θα χρησιμοποιήσουμε τη δομή Για, ώστε να δημιουργήσουμε τις
τιμές του εκθέτη.

Η κωδικοποίηση θα έχει ως εξής:

ΠΡΟΓΡΑΜΜΑ Άθροισμα
ΜΕΤΑΒΛΗΤΕΣ
ΑΚΕΡΑΙΕΣ: i, S1
ΠΡΑΓΜΑΤΙΚΕΣ: S2
ΑΡΧΗ
S1 <- 0
S2 <- 0
ΓΙΑ i ΑΠΟ 1 ΜΕΧΡΙ 100
S1 <- S1 + 1 / i
S2 <- S2 + 1 / 3 ^ i

290 18 - Απλές ασκήσεις κατανόησης με δομές επανάληψης

ΤEΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
ΓΡΑΨΕ S1, S2
ΤΕΛΟΣ_ΠΡΟΓΡΑΜΜΑΤΟΣ

Ο μετρητής δεν εξασφαλίζει απλώς το πλήθος των επαναλήψεων, αλλά εντός του βρόχου χρη-
σιμοποιούνται οι τιμές του για τον υπολογισμό της επιθυμητής ποσότητας.

18.10  Να αναπτυχθεί πρόγραμμα που θα διαβάζει έναν ακέραιο αριθμό Ν και θα

υπολογίζει το άθροισμα S = 5 + 3 - 9 + 27 - 81 + … ! 3N.
Λύση

Σ’ αυτό το άθροισμα παρατηρούμε ότι, μετά τον αρχικό όρο 5, το
πρόσημο καθενός όρου εναλλάσσεται. Την εναλλαγή του προσήμου
μπορούμε να την επιτύχουμε:

Α. Με την ύψωση του -1 σε άρτιο ή περιττό εκθέτη, ανάλογα με
την εξέλιξη των τιμών του μετρητή της δομής επανάληψης. Όταν
το -1 υψώνεται σε περιττό εκθέτη το πρόσημό του γίνεται αρνητι-
κό, ενώ, όταν υψώνεται σε άρτιο εκθέτη, γίνεται θετικό. Επομένως, το εναλλασσόμενο πρό-
σημο δημιουργείται πολλαπλασιάζοντας με τον όρο (-1) ^ i ή τον (-1) ^ (i + 1) κατά πε-
ρίπτωση (τρόπος Γ).

Β. Με τη χρήση δομής επιλογής ώστε να επιτυγχάνεται η εναλλαγή του προσήμου (τρόπος
Α). Μελετήστε τους παρακάτω αλγορίθμους.

Α΄ τρόπος

ΠΡΟΓΡΑΜΜΑ Άθροισμα1
ΜΕΤΑΒΛΗΤΕΣ
ΑΚΕΡΑΙΕΣ: N, i, S
ΑΡΧΗ
ΔΙΑΒΑΣΕ N
S <- 5 ! Πρώτος όρος
ΓΙΑ i ΑΠΟ 1 ΜΕΧΡΙ Ν
ΑΝ i mod 2 = 0 ΤΟΤΕ
S <- S - 3 ^ i
ΑΛΛΙΩΣ
S <- S + 3 ^ i
ΤΕΛΟΣ_ΑΝ
ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
ΓΡΑΨΕ S
ΤΕΛΟΣ_ΠΡΟΓΡΑΜΜΑΤΟΣ

Β΄ τρόπος
S <- 5 ! Πρώτος όρος
ΓΙΑ i ΑΠΟ 1 ΜΕΧΡΙ Ν ΜΕ_ΒΗΜΑ 2

Ενοτητα: δομη επαναληψησ 291

Ενότητα: Δομή επανάληψης

19 Συγκριτική μελέτη δομών επανάληψης
Διαφορές Όσο και Μέχρις_ότου

Τιμή φρουρός, έλεγχος δεδομένων, πολλαπλασιασμός
αλά ρωσικά, ασκήσεις με απάντηση ΝΑΙ / ΟΧΙ

Ερωτήσεις κατανόησης

19.1  Ερωτήσεις ανάπτυξης

1. Ποιες είναι οι διαφορές μεταξύ των δομών Όσο και Μέχρις_ότου;

Απάντηση

Η δομή Όσο ελέγχει τη συνθήκη στην αρχή του βρόχου, ενώ η δομή Μέχρις_ότου στο τέλος.
Αυτό έχει ως συνέπεια για την υλοποίηση του ίδιου βρόχου με τις δομές Όσο και Μέχρις_ότου
οι συνθήκες που χρησιμοποιούμε να είναι αντίθετες. Επίσης, ένας βρόχος Μέχρις_ότου εκτελεί-
ται τουλάχιστον μία φορά, ενώ σε μια δομή Όσο υπάρχει περίπτωση να μην εκτελεστεί καμία
επανάληψη. Υπάρχουν περιπτώσεις που η χρήση της Μέχρις_ότου οδηγεί σε απλούστερους και
πιο ευκολονόητους αλγορίθμους. Όταν πρέπει να εκτελεστεί οπωσδήποτε μια επανάληψη, προ-
τιμάται η δομή Μέχρις_ότου. Επίσης, προτιμάται στον έλεγχο αποδεκτών τιμών, καθώς και
στην επιλογή από προκαθορισμένες απαντήσεις ή μενού.

2. Ποια είναι η βασική διαφορά της Για από τις άλλες δυο δομές επανάληψης;
Απάντηση

Η δομή Για χρησιμοποιείται για προκαθορισμένο αριθμό επαναλήψεων, ενώ για τις άλλες δυο
δομές δεν είναι γνωστός εκ των προτέρων και εξαρτάται από τις συνθήκες που τις ελέγχουν.

3. Να γράψετε τμήμα αλγορίθμου που παραβιάζει το κριτήριο της περατότητας,
χρησιμοποιώντας:

α. τη δομή Όσο β. τη δομή Μέχρις_ότου γ. τη δομή Για.

Απάντηση

α. κ ← 2 β. Αρχή_επανάληψης
Όσο κ > 0 επανάλαβε κ ← 5
Εμφάνισε κ Εμφάνισε κ
κ ← κ + 1 Μέχρις_ότου κ = 1
Τέλος_επανάληψης

297

Να συμπληρώσετε τα κενά στον αλγόριθμο, σύμφω- Διάβασε Β
να με τις προηγούμενες προϋποθέσεις. Όσο    2   ή    3  
Εμφάνισε "Δώστε ξανά τον βαθμό"
(Τράπεζα Θεμάτων Β´ Λυκείου) Διάβασε Β
Τέλος_επανάληψης

7. Να γράψετε συμπληρωμένο κατάλληλα το διπλα- Για Ι από ____ μέχρι ____ &
με_βήμα ____
νό τμήμα αλγορίθμου, ώστε να εμφανίζει διαδοχικά Αν ____ και ____ τότε
Εμφάνισε Ι
τις τιμές: 2, 4, 8, 10, 14. (Εξετάσεις 2016) Τέλος_αν
Τέλος_επανάληψης

8. Να συμπληρώσετε τα κενά στο τμήμα του διπλα- Σ ←    1  
νού αλγορίθμου, ώστε να εμφανίζει τον μέσο όρο Κ←0
των περιττών αριθμών, μεταξύ όσων διαβάζονται. Για ι από 1 μέχρι 100
Διάβασε    2  
Αν α mod 2 =    3   τότε
Κ ←    4  
Σ ←    5  
Τέλος_αν
Τέλος_επανάληψης
Αν     6    τότε
Εμφάνισε    7  
Αλλιώς
Εμφάνισε    8  
Τέλος_αν

9. Δίνεται το διπλανό απόσπασμα αλγορίθμου. i <-    1  
ΟΣΟ i <=    2   ΕΠΑΝΑΛΑΒΕ
Να γράψετε τους αριθμούς 1 έως 5, που αντιστοι- ΑΝ i    3   <>    4   ΤΟΤΕ
χούν στα κενά του παραπάνω αποσπάσματος, και δί- ΓΡΑΨΕ i
πλα σε κάθε αριθμό τι πρέπει να συμπληρωθεί, ώστε ΤΕΛΟΣ_ΑΝ
με την εκτέλεσή του να εμφανίζονται οι τιμές: i <- i +    5  
ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
4, 8, 16, 20, 28, 32, 40
(Εξετάσεις 2017)

10.  Ο αριθμός π εκφράζει το πηλίκο της περιμέτρου ενός κύκλου προς τη διάμετρό του. Η τι-
μή του μπορεί να υπολογιστεί, κατά προσέγγιση, από την παρακάτω παράσταση:

π = 4 $ b11 - 1 + 1 - 1 + fl
3 5 7

Ενοτητα: δομη επαναληψησ 303

Στήλη Α Στήλη Β
(Στοιχεία κωδικοποίησης) (Παραδείγματα εντολών)

ε. Αν Χ = 2 τότε
Χ ← Χ / 2
Τέλος_αν

(Κάθε στοιχείο της στήλης Α μπορεί να αντιστοιχίζεται σε περισσότερα στοιχεία της στήλης Β.)
(Εξετάσεις 2003)

3. Κάθε στοιχείο της πρώτης στήλης να ταιριάξει με ένα στοιχείο της δεύτερης.

Στήλη Α Στήλη Β
(Προτάσεις) (Αλγοριθμική δομή)

1. Ο βρόχος μπορεί να μην εκτελεστεί ποτέ.

2. Ο βρόχος ολοκληρώνεται μόλις η συνθήκη

ελέγχου γίνει Ψευδής. α.  Όσο … επανάλαβε

3. Ο βρόχος ολοκληρώνεται με τη δεσμευμένη
λέξη Τέλος_επανάληψης

4. Ο βρόχος εκτελείται τουλάχιστον μια φορά. β.  Μέχρις_ότου

5. Ο βρόχος ολοκληρώνεται μόλις η συνθήκη
γίνει Αληθής.

4. Να γράψετε τους αριθμούς της στήλης Α και δίπλα το γράμμα της στήλης Β που αντιστοιχεί
σωστά.

Στήλη Α Στήλη Β
(Εντολές επανάληψης) (Αριθμός επαναλήψεων)

1. Για i από 1 μέχρι 10 με_βήμα 2 α.  τέσσερις επαναλήψεις
ομάδα_εντολών
Τέλος_επανάληψης

2. i ← 2 β.  άπειρες επαναλήψεις
Όσο i > -2 επανάλαβε γ.  πέντε επαναλήψεις
ομάδα_εντολών
i ← i -1
Τέλος_επανάληψης

3. i ← 3 δ.  έξι επαναλήψεις
Επανάλαβε ε.  τρεις επαναλήψεις
i ← i + 2
ομάδα_εντολών (Τράπεζα Θεμάτων Β´ Λυκείου)
Μέχρις_ότου i = 12

306 19 - Συγκριτική Μελέτη δομών Επανάληψης, Διαφορές Όσο και Μέχρις_ότου

Ενότητα: Δομή επανάληψης

2 5 Μαθηματικά
προβλήματα

Ασκήσεις λυμένες

25.1  Να αναπτυχθεί ψευδοκώδικας που θα διαβάζει έναν αριθμό Ν > 2 και θα

εκτυπώνει αντίστοιχο πλήθος όρων της ακολουθίας Fibonacci.

Ο πρώτος όρος της ακολουθίας Fibonacci είναι το 0, ο δεύτερος το 1 και κάθε επό‑
μενος όρος είναι το άθροισμα των δύο προηγούμενων (δηλαδή: 0, 1, 1, 2, 3, 5, 8, 13,
21, 34, 55, 89, …).

Λύση

Για τον υπολογισμό του εκάστοτε όρου χρειάζονται οι προηγούμενοι δύο όροι της ακολουθίας.
Θα χρησιμοποιήσουμε δύο μεταβλητές που θα διατηρούν τον προηγούμενο και τον προ-
-προηγούμενο όρο αντίστοιχα.

Αλγόριθμος Ακολουθία_Fibonacci ! Προ-προηγούμενος ο προηγούμενος
Αρχή_επανάληψης ! Προηγούμενος ο τρέχων όρος
Διάβασε Ν
Μέχρις_ότου Ν > 2
Εκτύπωσε "1ος όρος: 0"
Εκτύπωσε "2ος όρος: 1"
α_ν_2 ← 0
α_ν_1 ← 1
Για i από 3 μέχρι Ν
α_ν ← α_ν_2 + α_ν_1
Εκτύπωσε i, "ος όρος: ", α_ν
α_ν_2 ← α_ν_1
α_ν_1 ← α_ν
Τέλος_επανάληψης
Τέλος Ακολουθία_Fibonacci

371

χρησιμοποιώντας τη δομή επανάλη‑ α ← α + α div 6
ψης Όσο; Εκτύπωσε α
Μέχρις_ότου (α > Χ)

γ. Ποιες τιμές θα εμφανιστούν αν δο‑ Διάβασε λ
θεί ως είσοδος ο αριθμός 1 ή ο αριθ‑ Όσο (λ <= 8) επανάλαβε
μός 15; Εμφάνισε λ
λ←λ+2
Να μετατραπεί το διπλανό τμήμα αλγο‑ Τέλος_επανάληψης
ρίθμου σε αντίστοιχο που χρησιμοποιεί
τη δομή επανάληψης Μέχρις_ότου. S←0
Για i από 5 μέχρι 1 με_βήμα -1
Λύση S←S+i
Εμφάνισε i
α. Με βάση όσα αναφέρθηκαν παραπάνω, Τέλος_επανάληψης
μια πρώτη προσέγγιση είναι η διπλανή. Εμφάνισε S
Ωστόσο, ο αλγόριθμος αυτός δεν υπολογίζει
το σωστό άθροισμα (οι τιμές του μετρητή
δεν είναι οι σωστές, πρέπει να είναι 5, 4, 3,
2), ούτε εμφανίζει τις κατάλληλες τιμές· αυ-
τές είναι 4, 3, 2, 1.

Κατά συνέπεια, πρέπει να τροποποιηθούν η S←0
αρχική και η τελική τιμή του Για, αλλά και Για i από 5 μέχρι 2 με_βήμα -1
οι τιμές που θα εμφανιστούν. Ο αλγόριθμος S←S+i
ολοκληρωμένος είναι: Εμφάνισε i - 1
Τέλος_επανάληψης
Εμφάνισε S

Μετατροπή της δομής Όσο σε Για:

Διάβασε α Για
Όσο α <= 100 επανάλαβε
α ← α div 5 + 7

Τέλος_επανάληψης

α←5 Για
β ← 100
Όσο α > β επανάλαβε
α←α+8
β←β-5+α
Εμφάνισε α, β
Τέλος_επανάληψης

384 26 - Μετατροπές μεταξύ δομών επανάληψης

•  Απλή μετατροπή: S←0
Για α από 52 μέχρι 500 με_βήμα 15
α ← 52 Εμφάνισε α
S←0 S←S+α
Όσο α <= 500 επανάλαβε Τέλος_επανάληψης
Εμφάνισε α Εμφάνισε S
S←S+α
α ← α + 15
Τέλος_επανάληψης
Εμφάνισε S

•  Πονηρή μετατροπή [1] (λείπει το « = »):

α ← 52 S←0
S←0 Για α από 52 μέχρι 499 με_βήμα 15
Όσο α < 500 επανάλαβε ………………………
Εμφάνισε α
S←S+α
α ← α + 15
Τέλος_επανάληψης
Εμφάνισε S

•  Πονηρή μετατροπή [2] (θέση εντολής βήματος):

α ← 10 S←0
S←0 Για α από 10 μέχρι 1 με_βήμα -2
Όσο α > 0 επανάλαβε Εμφάνισε α - 2
α←α-2 S ← S + (α - 2)
Εμφάνισε α Τέλος_επανάληψης
S←S+α
Τέλος_επανάληψης ή

S←0
Για α από 8 μέχρι 0 με_βήμα -2
Εμφάνισε α
S←S+α
Τέλος_επανάληψης

Ενοτητα: δομη επαναληψησ 385

•  Πονηρή μετατροπή [2] της δομής Όσο σε Μέχρις_ότου:

Εντολές1 Εντολές1
Όσο συνθήκη επανάλαβε Αν συνθήκη τότε
Εντολές2 Αρχή_επανάληψης
Τέλος_επανάληψης Εντολές2
Εντολές3 Μέχρις_ότου όχι συνθήκη
Τέλος_αν
Εντολές3

Μετατροπές μεταξύ δομών επανάληψης

• Υπενθυμίζεται ότι οι δομές Όσο και Μέχρις_ότου επιλύουν όλα
τα προβλήματα (άγνωστου και γνωστού πλήθους επαναλήψεων),
ενώ η δομή Για συγκεκριμένα προβλήματα (γνωστού πλήθους επα-
ναλήψεων).

• Το κοινό μεταξύ των δομών Όσο και Μέχρις_ότου είναι πως
επιλύουν όλα τα προβλήματα. Έχουν όμως αντίθετη λογική στις συνθήκες τις οποίες ελέγ-
χουν: η συνθήκη στον βρόχο Όσο βρίσκεται στην αρχή του βρόχου, ενώ στον βρόχο Μέ-
χρις_ότου στο τέλος.

• Το κοινό μεταξύ των δομών Όσο και Για είναι πως η συνθήκη που καθορίζει τη συνέχεια
της επανάληψης ελέγχεται στην αρχή του βρόχου. Έτσι, η δομή Για συνδέεται σημασιολογι-
κά περισσότερο με τη δομή Όσο παρά με τη Μέχρις_ότου.

• Κάθε βρόχος Όσο μπορεί να μετα-
τραπεί σε Μέχρις_ότου και ανάποδα.
Χρειάζεται όμως προσοχή, ώστε να επι-
τελούν τις ίδιες λειτουργίες. Κύριο ση-
μείο διαφοροποίησης είναι η ιδιότητα
της δομής Μέχρις_ότου να εκτελεί
οπωσδήποτε μία επανάληψη.

• Κάθε βρόχος Για μπορεί να μετατραπεί σε Όσο.

• Κάθε βρόχος Για μπορεί να μετατραπεί σε Μέχρις_ότου (καλό είναι να προηγείται ως
βήμα η μετατροπή σε Όσο).

• Βρόχοι Όσο ή Μέχρις_ότου μπορούν να μετατραπούν σε Για, υπό προϋποθέσεις, με ου-
σιαστικό κριτήριο αν μπορεί να αποτυπωθεί το πλήθος των επαναλήψεων.

• Η μετατροπή από Για σε Μέχρις_ότου, αλλά και από Μέχρις_ότου σε Για (αν μπορεί
να πραγματοποιηθεί), καλό είναι να γίνεται σε 2 βήματα με ενδιάμεση μετατροπή στη δομή
Όσο.

Ενοτητα: δομη επαναληψησ 389

Επαναληπτικό κριτήριο αξιολόγησης 11

Στα κεφάλαια 1 έως και 29

Θέμα 1ο

Α. Να συμπληρώσετε τα κενά στις παρακάτω προτάσεις.

1. Δυο ή περισσότερες δομές επιλογής που περιλαμβάνονται η μία εντός της άλλης ονομάζο-
νται 1 .

2. Η δομή επιλογής έχει 3 μορφές: την απλή, τη σύνθετη και την 2 .

3. Οι τελεστές <, >, <=, >=, <> ονομάζονται 3 και χρησιμοποιούνται για τη διαμόρ-
φωση 4 εκφράσεων.

4. Δεν προτιμάται η αναπαράσταση αλγορίθμων σε 5 γιατί μπορεί να παραβιαστεί η απο-

τελεσματικότητα. Μονάδες 5

Β. Αντιστοιχίστε κάθε στοιχείο της στήλης Α με κάποιο στοιχείο της στήλης Β.

Στήλη Α Στήλη Β
(Αλγοριθμική έκφραση)
(Μαθηματική έκφραση)
α. α / β ^ 2
1. a
b β. α / β

2. a
b2

3. a2 γ. α ^ 2 / β ^ 2
b

4. b a 2 δ. α * α / β
b
l

Μονάδες 4

Γ. Να παρουσιάσετε έναν βρόχο που θα παραβιάζει το αλγοριθμικό κριτήριο της περατότητας

με χρήση:

α. της δομής Για … από … μέχρι, β. της δομής Όσο … επανάλαβε,

γ. της δομής Μέχρις_ότου. Μονάδες 9

Δ. Να παρουσιάσετε νέα κωδικοποίηση για καθεμιά από τις παρακάτω περιπτώσεις, σύμφωνα
με τις οδηγίες.

1. Να συμπληρώσετε το κενό ώστε τα δι- Διάβασε κ, λ Διάβασε κ, λ
Αν λ mod 2 = 0 τότε α←

πλανά δύο τμήματα αλγορίθμου να πραγμα- α←κ^3

τοποιούν τις ίδιες ενέργειες. Μονάδες 3 Αλλιώς
α ← (-1) * κ ^ 3

Τέλος_αν

κΡΙτΗΡΙο αΞΙολογΗΣΗΣ 11 473

2. Να γράψετε μια εντολή εκχώρησης που κ←κ^2
κ←κ+3
θα πραγματοποιεί τις ίδιες ενέργειες με τις κ ← Τ_Ρ(4 * κ - 5)

διπλανές. Μονάδες 2

3. Δίνεται η διπλανή κωδικοποίηση. Αν Α > 0 ή (Β = 6 και Γ < 10) τότε
Εμφάνισε "ΝΑΙ"
Γράψτε νέα κωδικοποίηση που για την ίδια Αλλιώς
Εμφάνισε "ΟΧΙ"
είσοδο να επιτελεί την ίδια έξοδο, χωρίς Τέλος_αν

χρήση λογικών τελεστών. Μονάδες 3

4. Να ξαναγράψετε το διπλανό τμήμα αλ- Διάβασε α, β
Αν α > 0 τότε
γορίθμου με χρήση μόνο μίας δομής απλής γ ← 140 + β
Αλλιώς
επιλογής. Μονάδες 4 γ ← 100
Τέλος_αν

Ε. Η διπλανή κωδικοποίηση γράφτηκε για Για i από 1 μέχρι 1000
Διάβασε Χ
τον υπολογισμό του μέσου όρου 1000 αριθ- Τέλος_επανάληψης
Σ←0
μών που διαβάζονται. Επιτελεί τον σκοπό Για i από 1 μέχρι 1000
Σ←Σ+Χ
του; Αν όχι, ποια τιμή εμφανίζει και ποια εί- Τέλος_επανάληψης
Εμφάνισε Σ
ναι η σωστή κωδικοποίηση; Μονάδες 5

ΣΤ.  Να ξαναγράψετε τη διπλανή κωδικο- Σ←0
Για ι από 1 μέχρι 100
ποίηση με χρήση της δομής Μέχρις_ότου, Αν ι mod 2 = 0 τότε
Σ ← Σ + ι
χωρίς δομή επιλογής. Μονάδες 5 Τέλος_αν
Τέλος_επανάληψης
Εμφάνισε Σ

Θέμα 2ο

Α. Κάποιος μαθητής, στην προσπάθειά του να μετατρέψει την επόμενη κωδικοποίηση Α στην
κωδικοποίηση Β που αξιοποιεί τη δομή Όσο για να υπολογίζει το ίδιο άθροισμα, έκανε κάποιο
λάθος. Ποιο είναι αυτό;

474 ΚΡΙΤΗΡΙΟ ΑΞΙΟΛΟΓΗΣΗΣ 11

Κωδικοποίηση Α Κωδικοποίηση Β

S <- 0 S <- 0
ΓΙΑ Κ ΑΠΟ 1 ΜΕΧΡΙ 5 Κ <- 1
ΓΙΑ L ΑΠΟ 1 ΜΕΧΡΙ 7 L <- 1
S <- S + 1 ΟΣΟ Κ <= 5 ΕΠΑΝΑΛΑΒΕ
ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ ΟΣΟ L <= 7 ΕΠΑΝΑΛΑΒΕ
ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ S <- S + 1
ΓΡΑΨΕ S L <- L + 1
ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
Κ <- Κ + 1
ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
ΓΡΑΨΕ S

Μονάδες 4

Β. Να παρουσιάσετε τμήμα εντολών που θα διαβάζει τις τιμές 3 μεταβλητών και θα εναλλάσ-

σει τα περιεχόμενά τους κυκλικά: θα μεταφέρει την τιμή της 1ης στη 2η, της 2ης στην 3η και

της 3ης στην 1η μεταβλητή. Μονάδες 4

Γ. Σε ένα πρόγραμμα επιλογής υποψηφίων απαιτείται η είσοδος τριών τιμών από τον χρήστη
για τις οποίες ισχύουν οι εξής περιορισμοί:
• ηλικία:  από 18 έως και 21
• φύλο:  ένα από τα γράμματα Α (για τους άνδρες), Θ (για τις γυναίκες)
• ύψος:  πάνω από 1.70 για τους άνδρες και πάνω από 1.60 για τις γυναίκες.

Δίνεται το διπλανό τμήμα αλγορίθμου το οποίο υλοποιεί τους συ- Αρχή_επανάληψης
Διάβασε ηλικία
γκεκριμένους περιορισμούς. Το τμήμα αυτό περιέχει κενά που Μέχρις_ότου    1  
Αρχή_επανάληψης
έχουν αριθμηθεί. Να γράψετε τους αριθμούς των κενών και δίπλα Διάβασε φύλο
Μέχρις_ότου    2  
σε κάθε αριθμό τη συνθήκη που αντιστοιχεί. Μονάδες 3 Αρχή_επανάληψης
Διάβασε ύψος
(Εξετάσεις 2018) Μέχρις_ότου    3  

Δ. Δίνεται το διπλανό τμήμα αλγορίθμου που περιέχει ένα κενό. Το κ←0
τμήμα αυτό μπορεί να χρησιμοποιηθεί για τον υπολογισμό καθε- Για i από 1 μέχρι 7
μιάς από τις παρακάτω αριθμητικές παραστάσεις: λ ←    1  
κ←κ+λ
α) 4 + 5 + 6 + 7 + 8 + 9 + 10 Τέλος_επανάληψης

β) 1 + 22 + 32 + 42 + 52 + 62 + 72

γ) 21 + 22 + 23 + 24 + 25 + 26 + 27

δ) 3 + 5 + 7 + 9 + 11 + 13 + 15

ε) 1 + 1 + 1 + 1 + 1 + 1 + 1
2 3 4 5 6 7 8

ΚΡΙΤΗΡΙΟ ΑΞΙΟΛΟΓΗΣΗΣ 11 475

Ενότητα: Εισαγωγή στον προγραμματισμό

3 2 Προγραμματιστικά
περιβάλλοντα
Παράγραφος 6.7 βιβλίου μαθητή

Ερωτήσεις κατανόησης

32.1  Ερωτήσεις ανάπτυξης

1. Τι είναι ένας μεταγλωττιστής;
Απάντηση

Είναι ένα μεταφραστικό πρόγραμμα που δέχεται ένα πρόγραμμα γραμμένο σε γλώσσα υψηλού
επιπέδου και παράγει ένα ισοδύναμο πρόγραμμα σε κατανοητή από τον υπολογιστή μορφή
(γλώσσα μηχανής). Το τελευταίο μπορεί να εκτελείται οποτεδήποτε από τον υπολογιστή και εί-
ναι τελείως ανεξάρτητο από το αρχικό πρόγραμμα.

2. Τι είναι ένας διερμηνευτής;
Απάντηση

Μεταφραστικό πρόγραμμα που διαβάζει μία προς μία τις εντολές ενός προγράμματος γραμμέ-
νου σε γλώσσα υψηλού επιπέδου και για κάθε εντολή παράγει μια ισοδύναμη ακολουθία εντο-
λών σε κατανοητή από τον υπολογιστή μορφή (γλώσσα μηχανής).

Για να εκτελεστεί το πρόγραμμα, πρέπει να υπάρχει το πηγαίο πρόγραμμα και κάθε φορά να
επαναλαμβάνεται η παραπάνω διαδικασία.

3. Να περιγράψετε τη διαδικασία για τη μετατροπή με μεταγλωττιστή ενός πηγαί‑

ου προγράμματος σε εκτελέσιμο πρόγραμμα, συμπεριλαμβανομένης της ανίχνευ‑

σης και διόρθωσης λαθών. (Εξετάσεις 2002)

Απάντηση

Γράφουμε το πηγαίο πρόγραμμα στον συντάκτη (γλώσσα υψηλού επιπέδου), το οποίο αποτελεί
είσοδο στον μεταγλωττιστή και παράγει το αντικείμενο πρόγραμμα (επόμενο σχήμα).

Αν o μεταγλωττιστής εντοπίσει συντακτικά λάθη στο πηγαίο πρόγραμμα, «παγώνει» τη μετα-
γλώττιση και με κατάλληλα διαγνωστικά μηνύματα ζητάει από τον προγραμματιστή τη διόρθω-
σή τους. Διορθώνεται το πηγαίο και υποβάλλεται εκ νέου σε μεταγλώττιση. Αυτό θα επαναλη-
φθεί μέχρι να εξαλειφθούν τα συντακτικά λάθη. Το αποτέλεσμα της μεταγλώττισης είναι το
αντικείμενο πρόγραμμα.

494

Το αντικείμενο πρόγραμμα είναι εκφρασμένο σε
μορφή κατανοητή από τον υπολογιστή (γλώσσα
μηχανής) αλλά δεν μπορεί να εκτελεστεί.

Ο συνδέτης δέχεται το αντικείμενο πρόγραμμα
και το συνδέει με τις βιβλιοθήκες της γλώσσας
(τμήματα προγράμματος με πρόσθετες πληροφο-
ρίες απαραίτητες για την εκτέλεσή του), δημιουρ-
γώντας το εκτελέσιμο πρόγραμμα που εκτελείται
από τον υπολογιστή.

Τα λογικά λάθη εντοπίζονται με επανεκτέλεση
και έλεγχο από τον προγραμματιστή, ώσπου να
διορθωθούν όλα.

4. α. Ποιος είναι ο ρόλος του συντάκτη σε ένα προγραμματιστικό περιβάλλον;

β. Ποιος είναι ο ρόλος του συνδέτη - φορτωτή σε ένα προγραμματιστικό περιβάλλον;

Απάντηση (Εξετάσεις 2014)

α. Ο συντάκτης είναι ένας επεξεργαστής κειμένου όπου συντάσσεται και υποβάλλεται σε επε-
ξεργασία το πηγαίο πρόγραμμα.

β. Ο συνδέτης είναι πρόγραμμα που συνδέει το αντικείμενο πρόγραμμα με τις βιβλιοθήκες της
γλώσσας και δημιουργεί το εκτελέσιμο πρόγραμμα.

5. Τι είναι τα λογικά και τι τα συντακτικά λάθη; Δώστε παραδείγματα.

Πότε εμφανίζονται τα συντακτικά λάθη ενός προγράμματος και πότε τα λογικά;

Απάντηση (Εξετάσεις 2009)

Τα συντακτικά λάθη προέρχονται από αναγραμματισμό εντολών, παραλείψεις στον κώδικα, όπως
παράλειψη δήλωσης μεταβλητών, παραβίαση κανόνων διαμόρφωσης εντολών κ.λπ., προκαλούν
τη διακοπή της εκτέλεσης του προγράμματος και εντοπίζονται κατά τη μεταγλώττιση από το ίδιο
το μεταφραστικό πρόγραμμα. Τα λογικά λάθη είναι δύσκολο να ανευρεθούν, και αυτό επιτυγχά-
νεται με διαδοχικές εκτελέσεις και δοκιμές του προγράμματος από τον προγραμματιστή.

Παραδείγματα
α. Η εντολή «Αν α > 0» περιέχει συντακτικό λάθος (λείπει το «τότε»).
β. Η εντολή «μο ← α + β / 2» περιέχει λογικό λάθος (λείπουν οι παρενθέσεις).

6. α. Ποιες είναι οι διαφορές μεταξύ μεταγλωττιστή και διερμηνευτή;

(Εξετάσεις 2002)

β. Ποια είναι η διαφορά μεταξύ διερμηνευτή και μεταγλωττιστή; (Εξετάσεις 2008)

γ. Ποιος είναι ο ρόλος του μεταγλωττιστή σε ένα προγραμματιστικό περιβάλλον;

(Εξετάσεις 2014)

Ενοτητα: ΕΙΣΑΓΩΓΗ ΣΤΟΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ 495

Απάντηση

Κάθε πρόγραμμα, για να εκτελεστεί από τον υπολογιστή, χρειάζεται πρώτα να μετατραπεί σε
μορφή κατανοητή από αυτόν. Η μετατροπή αυτή γίνεται από τον μεταγλωττιστή ή τον διερμη-
νευτή. Ο μεταγλωττιστής παράγει πρόγραμμα σε γλώσσα μηχανής ισοδύναμο με το πηγαίο, το
οποίο και εκτελείται οποτεδήποτε από τον υπολογιστή και είναι τελείως ανεξάρτητο από το αρ-
χικό πρόγραμμα (μπορεί να εκτελεστεί ξανά και ξανά χωρίς την αναγκαιότητα παρουσίας του
πηγαίου προγράμματος). Ο διερμηνευτής για κάθε εντολή του πηγαίου εκτελεί αμέσως μια ισο-
δύναμη ακολουθία εντολών μηχανής. Η χρήση μεταγλωττιστή έχει το μειονέκτημα ότι, για να
εκτελεστεί το πρόγραμμα, πρέπει να περάσει ολόκληρο από τη διαδικασία μεταγλώττισης και
σύνδεσης. Ενώ ο διερμηνευτής έχει το πλεονέκτημα της άμεσης εκτέλεσης και διόρθωσης, κα-
θιστώντας όμως την εκτέλεση πιο αργή.

7. Ποια είναι η διαδικασία μετά‑
φρασης και εκτέλεσης προγράμ‑
ματος με χρήση διερμηνευτή;
Απάντηση

Ο διερμηνευτής δέχεται μία μία τις
εντολές του πηγαίου προγράμματος.
Αναλύει και ανιχνεύει τα λάθη σε κάθε
εντολή εμφανίζοντας κατάλληλο δια-
γνωστικό μήνυμα σε περίπτωση λά-
θους. Η διαδικασία πραγματοποιείται
μέχρι να μην υπάρχει λάθος στην εντο-
λή αυτή, οπότε και εκτελείται. Το πα-
ραπάνω επαναλαμβάνεται για όλες τις
εντολές του πηγαίου προγράμματος.

8. Ένα σύγχρονο προγραμματιστικό περιβάλλον χρησιμοποιεί μεταγλωττιστή ή
διερμηνευτή;
Απάντηση

Χρησιμοποιούνται μεικτές υλοποιήσεις, με διερμηνευτή κατά τη φάση της δημιουργίας του
προγράμματος και μεταγλωττιστή για την τελική έκδοση και εκμετάλλευση του προγράμματος.

9. Ποια προγράμματα και εργαλεία περιέχει ένα προγραμματιστικό περιβάλλον;
Απάντηση

Περιέχει συντάκτη, μεταγλωττιστή και συνδέτη.

32.2  Ερωτήσεις του τύπου Σωστό-Λάθος Σ   Λ 

1. Ο μεταγλωττιστής μάς επιτρέπει να συντάσσουμε ένα πρόγραμμα. Σ   Λ 
Σ   Λ 
2. Ο μεταγλωττιστής αναλαμβάνει τον ρόλο της μετάφρασης από το πηγαίο πρό-
γραμμα στο εκτελέσιμο πρόγραμμα.

3. Ο μεταγλωττιστής εξάγει το πηγαίο πρόγραμμα.

496 32 - Προγραμματιστικά περιβάλλοντα

32.14  Σταυρόλεξο στην ενότητα Εισαγωγή στον Προγραμματισμό

Οριζόντια
3. Ο ______ δέχεται το αντικείμενο πρόγραμμα και, με τη βοήθεια των βιβλιοθηκών της γλώσ-
σας, δημιουργεί το τελικό πρόγραμμα.
4. Διαβάζει μία-μία εντολή ενός προγράμματος γραμμένου σε γλώσσα υψηλού επιπέδου και
για κάθε εντολή δημιουργεί ισοδύναμη ακολουθία εντολών σε γλώσσα μηχανής.
6. Σχεδίαση προγραμμάτων που ακολουθεί την «από πάνω προς τα κάτω» ανάλυση.
10.  Ένα τέτοιο περιβάλλον περιέχει συντάκτη, μεταγλωττιστή και συνδέτη.
14.  Σε ένα πρόγραμμα μπορεί να εντοπιστούν ______ και συντακτικά λάθη.
17.  Σύνολο κανόνων που καθορίζει το νόημα των λέξεων και εκφράσεων μιας γλώσσας.
18.  Δέχεται στην είσοδο ένα πρόγραμμα γραμμένο σε μία γλώσσα υψηλού επιπέδου και παρά-
γει ένα ισοδύναμο πρόγραμμα σε γλώσσα μηχανής.
20.  Έτσι ονομάζεται το αποτέλεσμα της διαδικασίας μεταγλώττισης και σύνδεσης.
21.  Ειδικό πρόγραμμα που χρησιμοποιείται για την επεξεργασία του πηγαίου προγράμματος.
22.  Αυτά τα λάθη εντοπίζει και επισημαίνει ο μεταγλωττιστής.

Κατακόρυφα
1. Βασική διαφορά μεταξύ φυσικών και τεχνητών γλωσσών.
2. Προγραμματισμός που υλοποιεί την ιεραρχική σχεδίαση.

506 32 - Προγραμματιστικά περιβάλλοντα

ΑΝ μέρα MOD 2 <> ακυκλ MOD 2 ΤΟΤΕ Εμφάνισε Λ, Α_Μ(Κ / 3)
! και τα 2 περιττοί ή και τα 2 άρτιοι Τέλος_αν
! ΑΝ ΟΧΙ ((μέρα MOD 2 = 0 ΚΑΙ i ← i - 2
! ακυκλ MOD 2 = 0) Ή Μέχρις_ότου i < 9
! (μέρα mod 2 = 1 ΚΑΙ ακυκλ mod 2 = 1))
! ΤΟΤΕ Γ. Είναι λάθος, γιατί θα πρέπει μέσα στον βρόχο το αποτέλε-
ΓΡΑΨΕ 'Παραβάτης' σμα της αύξησης του επιτοκίου να εκχωρείται στην (ίδια) μετα-
παρ <- παρ + 1 βλητή - ποσό. Με την υπάρχουσα κωδικοποίηση, τοκίζεται 7 φο-
ΤΕΛΟΣ_ΑΝ ρές το αρχικό ποσό, συνεπώς το αποτέλεσμα είναι ο τοκισμός
ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ του ποσού για 1 χρόνο.
ποσοστό <- 100 * παρ / 500
ΓΡΑΨΕ ποσοστό Δ. Σ = 2 - 3 + 4 - 5 + 6 - 7 + 8 - 9 + 10 = 6
ΤΕΛΟΣ_ΠΡΟΓΡΑΜΜΑΤΟΣ
Ε. α. Θα υλοποιηθεί με τη δομή Μέχρις_ότου.
Κριτήριο αξιολόγησης 8
όλοι <- 0
Θέμα 1ο Σ <- 0
ΑΡΧΗ_ΕΠΑΝΑΛΗΨΗΣ
Α. Θα εμφανίσει τις τιμές 5, 4, 3, 2, 1. ΔΙΑΒΑΣΕ α
Διαχωρίζει τον αριθμό σε ψηφία, εμφανίζοντάς τα ανάποδα. ΑN α >= 10 ΚΑΙ α <= 99 ΤΟΤΕ
Σ <- Σ + α
Β. Η κωδικοποίηση με χρήση της δομής Όσο … επανάλαβε ΤΕΛΟΣ_ΑΝ
θα είναι: όλοι <- όλοι + 1
ΜΕΧΡΙΣ_ΟΤΟΥ α = 13 Ή όλοι = 100
Διάβασε Κ, Λ ΓΡΑΨΕ Σ
i ← 16
Όσο i >= 9 επανάλαβε β. Θα υλοποιηθεί με τη δομή Όσο.
Κ←Κ-2
Λ←Λ+Κ όλοι <- 0
Όσο Κ >= Λ επανάλαβε Σ <- 0
Κ←Κ-2 ΔΙΑΒΑΣΕ α
Λ←Λ+Κ ΟΣΟ α <> 13 ΚΑΙ όλοι < 100 ΕΠΑΝΑΛΑΒΕ
Τέλος_επανάληψης ΑN α >= 10 ΚΑΙ α <= 99 ΤΟΤΕ
Αν Κ mod 2 = 0 τότε Σ <- Σ + α
Εμφάνισε Κ ΤΕΛΟΣ_ΑΝ
Αλλιώς όλοι <- όλοι + 1
Εμφάνισε Λ, Α_Μ(Κ / 3) ΔΙΑΒΑΣΕ α
Τέλος_αν ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
i ← i - 2 ΓΡΑΨΕ Σ
Τέλος_επανάληψης
Θέμα 2ο
Η κωδικοποίηση με χρήση της δομής Αρχή_επανάληψης θα είναι: Α. Διάβασε x

Διάβασε Κ, Λ Αν x mod 5 = 0 τότε
i ← 16 x ← x + 2
Αρχή_επανάληψης Όσο όχι (x >= 50) επανάλαβε
Αρχή_επανάληψης x ← x + 4
Κ←Κ-2 Τέλος_επανάληψης
Λ←Λ+Κ Αλλιώς
Μέχρις_ότου K < Λ i ← 1
Αν Κ mod 2 = 0 τότε Όσο όχι (i >= 10) επανάλαβε
Εμφάνισε Κ i ← i + 2
Αλλιώς x ← x * 5
Τέλος_επανάληψης
Τέλος_αν
Εκτύπωσε x

674 υποδειξεισ - απαντησεισ

Κεφάλαιο 30

Ερωτήσεις Κατανόησης 30.4  Ερωτήσεις συμπλήρωσης κενού

1. Τυπικό 2. Συντακτικό 3. αλφάβητο
4. λεξιλόγιο 5. Σημασιολογία
30.2  Ερωτήσεις του τύπου Σωστό-Λάθος
5. Σ 30.5  Επιλέξτε όσα θεωρείτε κατάλληλα
1. Σ 2. Λ 3. Λ 4. Λ 10. Λ
6. Σ 7. Λ 8. Λ 9. Σ 1. α, β, γ, δ 2. β, δ

30.3  Ερωτήσεις του τύπου Σωστό-Λάθος 5. Σ 30.6  Ερωτήσεις αντιστοίχισης 4→δ
10. Σ 8→β
1. Λ 2. Λ 3. Σ 4. Λ 1. 1 → α, 2 → δ, 3 → γ,
6. Σ 7. Σ 8. Σ 9. Λ 5 → γ, 6 → ε, 7 → δ,

2. 1 → α, γ, 2 → β, δ, ε

Κεφάλαιο 31

Ερωτήσεις Κατανόησης Ασκήσεις για λύση
31.10  1.  Το διάγραμμα ροής έχει ως εξής:
31.2  Ερωτήσεις του τύπου Σωστό-Λάθος 5. Λ
10. Σ 2. Αν Α > 0 τότε
1. Σ 2. Λ 3. Σ 4. Σ 15. Λ Εκτύπωσε "Θετικός"
6. Σ 7. Σ 8. Σ 9. Σ Αλλιώς_αν Α = 0 τότε
11. Λ 12. Σ 13. Λ 14. Λ Εκτύπωσε "Μηδέν"
Αλλιώς
31.3  Ερωτήσεις του τύπου Σωστό-Λάθος 5. Λ Εκτύπωσε "Αρνητικός"
10. Σ Τέλος_αν
1. Λ 2. Λ 3. Σ 4. Σ 15. Σ Εκτύπωσε " Τέλος"
6. Σ 7. Λ 8. Σ 9. Σ
11. Σ 12. Λ 13. Σ 14. Λ 31.11  Α.  Εντολή1

31.4  Ερωτήσεις συμπλήρωσης κενού Αν Συνθήκη1 τότε
Εντολή2
1. «από επάνω προς τα κάτω» Εντολή5
2. ιεραρχική Εντολή6
3. τμηματικού/δομημένου
4. ακολουθίας, επιλογής, επανάληψης
5. GOTO (πήγαινε)
6. δομημένος, ιεραρχικό

31.5  Ερωτήσεις πολλαπλής επιλογής

1. β 2. α 3. β

31.6  Επιλέξτε όσα θεωρείτε κατάλληλα

1. β, δ, ε 2. β, γ 3. α

31.7  Ερώτηση αντιστοίχισης

1. 1 → δ, 2 → γ, 3 → α, 4 → β

680 υποδειξεισ - απαντησεισ

Παράρτημα 1
Λύσεις ασκήσεων τετραδίου μαθητή

Κεφάλαιο 2

ΔΤ1. ΠΡΟΓΡΑΜΜΑ Περίοδος άθροισμα ← άθροισμα + βαθμός
Τέλος_αν
ΣΤΑΘΕΡΕΣ
π = 3.14 Τέλος_επανάληψης
ΜΕΤΑΒΛΗΤΕΣ Αποτελέσματα // άθροισμα //
Τέλος Βαθμολογία
ΠΡΑΓΜΑΤΙΚΕΣ: L, g, T
ΑΡΧΗ Τα διαγράμματα ροής φαίνονται
στη συνέχεια.
ΔΙΑΒΑΣΕ L, g
T <- 2 * π * Τ_Ρ(L / g)

ΓΡΑΨΕ 'Η περίοδος είναι ', Τ
ΤΕΛΟΣ_ΠΡΟΓΡΑΜΜΑΤΟΣ

ΔΤ2. ΠΡΟΓΡΑΜΜΑ Συνάλλαγμα

ΣΤΑΘΕΡΕΣ
ισοτ_λίρα = 550
ισοτ_δολάριο = 280
ισοτ_μάρκο = 100
ΜΕΤΑΒΛΗΤΕΣ

ΠΡΑΓΜΑΤΙΚΕΣ: δρχ
ΑΡΧΗ
δρχ <- 1025 * ισοτ_λίρα + 2234 * ισοτ_δολάριο + &
3459 * ισοτ_μάρκο

ΓΡΑΨΕ δρχ
ΤΕΛΟΣ_ΠΡΟΓΡΑΜΜΑΤΟΣ

ΔΤ3. 1. Αλγόριθμος Μέσος_Όρος

άθροισμα ← 0
Για i από 1 μέχρι 100
Διάβασε ηλικία

άθροισμα ← άθροισμα + ηλικία
Τέλος_επανάληψης

ΜΟ ← άθροισμα / 100
Αποτελέσματα // ΜΟ //

Τέλος Μέσος_Όρος

2. Αλγόριθμος Βαθμολογία
Δεδομένα // Ν //

άθροισμα ← 0
Για i από 1 μέχρι Ν
Διάβασε βαθμός
Αν βαθμός > 100 τότε

684 παΡαΡτηΜα 1: Λυσεισ τετΡαδιου ΜαΘητη

Παράρτημα 2
Λύσεις ασκήσεων οδηγιών μελέτης μαθητή

Κεφάλαιο 1: Γλώσσα - Δομή Ακολουθίας

1.8 Μη λυμένες ασκήσεις xy οθόνη

1. 1. Λάθος 2. Σωστή 3. Σωστή 12 7
4. Σωστή 5. Σωστή 6. Λάθος
7. Λάθος 8. Λάθος 9. Σωστή 11 16 Νέα τιμή x = 11
10. Σωστή 11. Σωστή 12. Σωστή Νέα τιμή y = 16
13. Σωστή 14. Σωστή 15. Σωστή
16. Σωστή 17. Λάθος 18. Λάθος 7. ΠΡΟΓΡΑΜΜΑ αγορά
19. Σωστή 20. Σωστή ΜΕΤΑΒΛΗΤΕΣ

2. 1. 6 2. 22 3. 26 4. 3 ΑΚΕΡΑΙΕΣ: δόσεις
5. 5 / 3 6. 9.5 7. 6.5 ΠΡΑΓΜΑΤΙΚΕΣ: ποσό, ποσό_δόσης
ΑΡΧΗ
3. 1. (χ ^ 2 + ψ ^ 2) / 2 ΔΙΑΒΑΣΕ δόσεις, ποσό
2. 5 * β + (2 * α + β ^ 2) / (α + β) ποσό_δόσης <- ποσό / δόσεις
3. Τ_Ρ(χ + ψ) - 4 / (3 + χ) ΓΡΑΨΕ ' Το ποσό της κάθε δόσης είναι ', ποσό_δόσης
4. Τ_Ρ(χ / 7) + 5 ΤΕΛΟΣ_ΠΡΟΓΡΑΜΜΑΤΟΣ
5. Τ_Ρ((χ + 5) / ψ) + Α_Τ(α + β)
6. α ^ 2 + (3 + Τ_Ρ(χ)) / Τ_Ρ(4 + ψ ^ 2) 8. ΠΡΟΓΡΑΜΜΑ Επεξεργασία
ΜΕΤΑΒΛΗΤΕΣ
4. 1. ΨΕΥΔΗΣ 2. ΑΛΗΘΗΣ 3. ΨΕΥΔΗΣ
4. ΨΕΥΔΗΣ 5. ΑΛΗΘΗΣ 6. ΨΕΥΔΗΣ ΑΚΕΡΑΙΕΣ: αριθμός, εκ, δεκ, μον, βοηθ, άθροισμα
ΑΡΧΗ
5. Ο πίνακας τιμών έχει ως εξής:
ΔΙΑΒΑΣΕ αριθμός
α β γ x οθόνη εκ <- αριθμός DIV 100
10 19 29 7700 βοηθ <- αριθμός MOD 100
7700 δεκ <- βοηθ DIV 10
7719 7719 μον <- βοηθ MOD 10
άθροισμα <- εκ + δεκ + μον

ΓΡΑΨΕ άθροισμα
ΤΕΛΟΣ_ΠΡΟΓΡΑΜΜΑΤΟΣ

6. Οι πίνακες τιμών έχουν ως εξής: 9. ΠΡΟΓΡΑΜΜΑ Τράπεζα
ΜΕΤΑΒΛΗΤΕΣ
xyγδ οθόνη
ΠΡΑΓΜΑΤΙΚΕΣ: ποσό_αρχικά, ποσό, τόκος
12 7 1 5 ΑΡΧΗ

x = 12 ΔΙΑΒΑΣΕ ποσό_αρχικά
y = 7 ποσό <- ποσό_αρχικά ! στιγμή 0
Υπόλοιπο = 5 ποσό <- ποσό + 1.6 / 100 * ποσό ! μετά από 1 έτος
Πηλίκο = 1 ποσό <- ποσό + 1.6 / 100 * ποσό ! μετά από 2 έτη
ποσό <- ποσό + 1.6 / 100 * ποσό ! μετά από 3 έτη
τόκος <- ποσό - ποσό_αρχικά

παΡαΡτηΜα 2: Λυσεισ οδηΓιΩν ΜεΛετησ ΜαΘητη 695


Click to View FlipBook Version