ΥΠΟΣΤΗΡΙΚΤΙΚΟ ΥΛΙΚΟ ΓΙΑ ΤΟ ΜΑΘΗΜΑ ΤΗΣ Β ΛΥΚΕΙΟΥ ΕΙΣΑΓΩΓΗ ΣΤΙΣ ΑΡΧΕΣ ΤΗΣ ΕΠΙΣΤΗΜΗΣ ΤΩΝ Η/Υ ΚΕΦΑΛΑΙΟ 2.2 ΑΛΓΟΡΙΘΜΟΙ

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

Ανάπτυξη Εφαρμογών σε Προγραμματιστικό Περιβάλλον

2 ΟΥ και 7 ΟΥ ΚΕΦΑΛΑΙΟΥ

Ορισµοί κεφαλαίου. Σηµαντικά σηµεία κεφαλαίου

Βασικές Έννοιες Αλγορίθμων. Βασικές Εντολές Αλγορίθμων (Κεφ. 2ο Παρ. 2.4)

Εισαγωγή - Βασικές έννοιες. Ι.Ε.Κ ΓΛΥΦΑΔΑΣ Τεχνικός Τεχνολογίας Internet Αλγοριθμική Ι (Ε) Σχολ. Ετος A Εξάμηνο

Ερωτήσεις πολλαπλής επιλογής - Κεφάλαιο 2. Α1. Ο αλγόριθμος είναι απαραίτητος μόνο για την επίλυση προβλημάτων πληροφορικής

ΓΛΩΣΣΑ ΑΛΦΑΒΗΤΟ ΤΥΠΟΙ ΔΕΔΟΜΕΝΩΝ ΣΤΑΘΕΡΕΣ ΜΕΤΑΒΛΗΤΕΣ

Πρόβλημα 29 / σελίδα 28

Κεφ 2. Βασικές Έννοιες Αλγορίθμων


2ο ΓΕΛ ΑΓ.ΔΗΜΗΤΡΙΟΥ ΑΕΠΠ ΘΕΟΔΟΣΙΟΥ ΔΙΟΝ ΠΡΟΣΟΧΗ ΣΤΑ ΠΑΡΑΚΑΤΩ

Θεωρητικές Ασκήσεις. ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ. 1 ο Μέρος

2 ΟΥ και 8 ΟΥ ΚΕΦΑΛΑΙΟΥ

Αλγόριθμοι Αναπαράσταση αλγορίθμων Η αναπαράσταση των αλγορίθμων μπορεί να πραγματοποιηθεί με:

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ Κεφάλαιο 2 ο

ΣΗΜΕΙΩΣΕΙΣ ΣΤΟ ΜΑΘΗΜΑ «ΕΙΣΑΓΩΓΗ ΣΤΙΣ ΑΡΧΕΣ ΤΗΕ ΕΠΙΣΤΗΜΗΣ ΤΩΝ Η/Υ»

Κεφάλαιο 2 ο Βασικές Έννοιες Αλγορίθμων (σελ )

ΕΡΩΤΗΣΕΙΣ ΔΙΑΦΟΡΩΝ ΤΥΠΩΝ ΣΤΟ ΚΕΦΑΛΑΙΟ 2.2

Ανάπτυξη Εφαρμογών σε Προγραμματιστικό Περιβάλλον. Εκχώρηση Τιμών

3. Να γραφεί πρόγραμμα που θα διαβάζει 100 ακεραίους αριθμούς από το πληκτρολόγιο και θα υπολογίζει το άθροισμά τους.

Κεφάλαιο 7 ο Βασικές Έννοιες Προγραμματισμού (σελ )

1. Όλα τα προβλήματα μπορούν να λυθούν με τη βοήθεια HY. 2. Ο υπολογισμός του εμβαδού τετραγώνου είναι πρόβλημα άλυτο.

Αλγοριθμική & Δομές Δεδομένων- Γλώσσα Προγραμματισμού Ι (PASCAL) Βασικές αλγοριθμικές δομές

ΑΡΧΗ 1ης ΣΕΛΙΔΑΣ. i. Η συνθήκη α > β ή α <= β α) είναι πάντα Αληθής β) είναι πάντα Ψευδής γ) δεν υπολογίζεται δ) τίποτα από τα προηγούμενα

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΣΕ ΓΛΩΣΣΟΜΑΘΕΙΑ

Ερωτήσεις πολλαπλής επιλογής - Κεφάλαιο 2

1. Τι ονομάζουμε αλγόριθμο; Δώστε παράδειγμα.

Άσκηση 1. Ποια από τα κάτω αλφαριθμητικά είναι αποδεκτά ως ονόματα μεταβλητών σε έναν αλγόριθμο i. Τιμή

ΑΡΧΗ 1ης ΣΕΛΙΔΑΣ. Α2. Να αναφέρετε ονομαστικά: i) τα αλγοριθμικά κριτήρια ii) τους τρόπους αναπαράστασης αλγορίθμου. (μονάδες 10)

Ο αλγόριθμος πρέπει να τηρεί κάποια κριτήρια

ΔΟΜΗΜΕΝΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ

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

ΚΕΦΑΛΑΙΟ 2 ΑΛΓΟΡΙΘΜΟΙ ΔΟΜΗ ΑΚΟΛΟΥΘΙΑΣ ΘΕΩΡΙΑ

4.4 Μετατροπή από μία μορφή δομής επανάληψης σε μία άλλη.

Γ τάξη Τεχνολογικής Κατεύθυνσης Ενιαίου Λυκείου ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ. ΔΟΜΗ ΕΠΙΛΟΓΗΣ Διδάσκων: ΔΟΥΡΒΑΣ ΙΩΑΝΝΗΣ

2 ΟΥ και 8 ΟΥ ΚΕΦΑΛΑΙΟΥ

7.1 Αλφάβητο. 7.2 Τύποι δεδομένων. 7.3 Σταθερές. 7.4 Μεταβλητές. 7.5 Αριθμητικοί τελεστές. 7.6 Συναρτήσεις. 7.7 Αριθμητικές εκφράσεις. 7.

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

ΠΕΡΙΕΧΟΜΕΝΑ. Εντολές επιλογής Εντολές επανάληψης

επιµέλεια Θοδωρής Πιερράτος

Ασκήσεις Προγραμματισμού για το Μάθημα : Εφαρμογές Πληροφορικής. Π=3.14 Μεταβλητές Πραγματικές: X,A,B,Y Αρχή

Α1. Στον προγραµµατισµό χρησιµοποιούνται δοµές δεδοµένων. 1. Τι είναι δυναµική δοµή δεδοµένων; Μονάδες 3 2. Τι είναι στατική δοµή δεδοµένων;

ΚΕΦΑΛΑΙΑ & 8.2 (ΔΟΜΕΣ ΕΠΑΝΑΛΗΨΗΣ) ΘΕΩΡΙΑ

ΚΟΡΥΦΑΙΟ ΦΡΟΝΤΙΣΤΗΡΙΟ korifeo.gr Μάθημα :Προγραμματισμός Εξεταζόμενη ύλη : 2o, 3o,4o,5o κεφάλαιο ΘΕΜΑ 1 ο

ΔΙΑΓΩΝΙΣΜΑ ΣΤΗΝ ΠΛΗΡΟΦΟΡΙΚΗ

Εισαγωγή στις Αρχές της Επιστήμης των Υπολογιστών

ΔΟΜΗ ΕΠΙΛΟΓΗΣ. Οι διάφορες εκδοχές της

Ανάπτυξη Εφαρμογών σε Προγραμματιστικό Περιβάλλον

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

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ Κεφάλαιο 2 ο. Επικοινωνία:

8.4. Δραστηριότητες - ασκήσεις

Τεχνικές Αναπαράστασης αλγορίθµων Ψευδοκώδικας Διάγραµµα Ροής Αλγοριθµικές δοµές (Ακολουθία Επιλογή Επανάληψη)

Η Δομή Επανάληψης. Εισαγωγή στην δομή επανάληψης Χρονική διάρκεια: 3 διδακτικές ώρες

Επιλογή και επανάληψη. Λογική έκφραση ή συνθήκη

ΓΕΝΙΚΟ ΛΥΚΕΙΟ ΚΑΡΠΕΝΗΣΙΟΥ ΔΙΩΡΟ ΕΠΑΝΑΛΗΠΤΙΚΟ ΔΙΑΓΩΝΙΣΜΑ ΣΤΗΝ ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ 19/12/2008. Τμήμα ΓΤ1 Όνομα:...

Σελίδα 1 από 7 ΔΙΑΓΩΝΙΣΜΑ ΕΚΠ. ΕΤΟΥΣ ΜΑΘΗΜΑ / ΤΑΞΗ : ΑΕΠΠ / ΘΕΡΙΝΑ ΣΕΙΡΑ: ΗΜΕΡΟΜΗΝΙΑ:

Διαγώνισμα Ανάπτυξης Εφαρμογών Σε Προγραμματιστικό Περιβάλλον

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ Κεφάλαιο 3 ο

7. Βασικά στοιχεία προγραµµατισµού.

Αν χ >= 0 ΚΑΙ χ <= 9 τότε Εμφάνισε Θετικός Μονοψήφιος Τέλος_αν Αν Χ <= 99 τότε

Βρόχοι. Εντολή επανάληψης. Το άθροισμα των αριθμών 1 5 υπολογίζεται με την εντολή. Πρόβλημα. Πώς θα υπολογίσουμε το άθροισμα των ακέραιων ;

ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ ΑΛΓΟΡΙΘΜΩΝ ΚΕΦΑΛΑΙΟ 2 ο ΚΕΦΑΛΑΙΟ 7 ο ΕΡΩΤΗΣΕΙΣ ΓΕΝΙΚΑ ΠΕΡΙ ΑΛΓΟΡΙΘΜΩΝ

ΑΡΧΗ 1ης ΣΕΛΙΔΑΣ ΕΞΕΤΑΖΟΜΕΝΟ ΜΑΘΗΜΑ : ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΤΑΞΗ : Γ ΛΥΚΕΙΟΥ ΣΠΟΥΔΕΣ ΟΙΚΟΝΟΜΙΑΣ & ΠΛΗΡΟΦΟΡΙΚΗΣ

Ονοματεπώνυμο: Ανάπτυξη Εφαρμογών σε Προγραμματιστικό Περιβάλλον. Δομή Ακολουθίας και Επιλογής Κεφ: 2.1, 2.3, , 6.3, , 8.1, 8.1.

Τάξη: Γ Λυκείου Κατεύθυνση: Τεχνολογική Μάθημα: Ανάπτυξη Εφαρμογών σε Προγ/κό Περιβάλλον Είδος Εξέτασης: Διαγώνισμα Ημερομηνία Εξέτασης:

ΣΕΙΡΑ: ΗΜΕΡΟΜΗΝΙΑ: 18/02/2013 ΑΠΑΝΤΗΣΕΙΣ ΘΕΜΑ Α

Ενδεικτικές Ερωτήσεις Θεωρίας

Κεφαλαιο 2.2 ΑΝΑΚΕΦΑΛΑΙΩΤΙΚΕΣ ΑΛΓΟΡΙΘΜΟΙ

ΦΡΟΝΤΙΣΤΗΡΙΟ ΦΑΣΜΑ 12/10/2014

Εισαγωγή στην Επιστήμη των Η/Υ Β ΓΕΛ Σημειώσεις στην Ψευδογλώσσα

ΑΣΚΗΣΕΙΣ ΣΤΗ ΟΜΗ ΕΠΙΛΟΓΗΣ (ΑΝΑΦΕΡΟΝΤΑΙ ΟΣΑ ΠΡΟΕΡΧΟΝΤΑΙ ΑΠΟ ΤΗΝ ΤΡΑΠΕΖΑ ΘΕΜΑΤΩΝ)

ΕΚΦΩΝΗΣΕΙΣ & ΛΥΣΕΙΣ ΘΕΜΑΤΩΝ ΤΘ ΑΝΑ ΚΕΦΑΛΑΙΟ ΚΑΙ ΠΑΡΑΓΡΑΦΟ

Γ ΤΑΞΗ ΕΝΙΑΙΟΥ ΛΥΚΕΙΟΥ ΤΕΧΝΟΛΟΓΙΚΗ ΚΑΤΕΥΘΥΝΣΗ ΕΞΕΤΑΖΟΜΕΝΟ ΜΑΘΗΜΑ: ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ

ΠΕΝΤΕΛΗ ΒΡΙΛΗΣΣΙΑ. Α1. Δίνονται τα παρακάτω τμήματα αλγορίθμου σε φυσική γλώσσα, τα οποία πρέπει να γράψετε σε μορφή προγράμματος.

ΑΕΠΠ Ερωτήσεις θεωρίας

1. Πότε χρησιμοποιούμε την δομή επανάληψης; Ποιες είναι οι διάφορες εντολές (μορφές) της;

ΚΕΦΑΛΑΙΟ 7 ο. Έτσι ο προγραµµατισµός µε τη ΓΛΩΣΣΑ εστιάζεται στην ανάπτυξη του αλγορίθµου και τη µετατροπή του σε σωστό πρόγραµµα.

18/ 07/ Σελίδα 1 6

ΑΡΧΗ 1ης ΣΕΛΙΔΑΣ. Για i από 1 μέχρι Μ Εμφάνισε A[4,i] Τέλος_επανάληψης. (μονάδες 6) ΤΕΛΟΣ 1ης ΑΠΟ 7 ΣΕΛΙΔΕΣ

Αριθμητικές Λογικές - Σύνθετες εκφράσεις, εντολή εκχώρησης, εντολές εισόδου εξόδου, Δομές ακολουθίας/ επιλογής/ επανάληψης

Όνομα(τα): Όνομα(τα): Όνομα Η/Υ: Τμήμα: Ημερομηνία: Δομή Επιλογής

ΕΞΕΤΑΖΟΜΕΝΟ ΜΑΘΗΜΑ : ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΤΑΞΗ : Γ ΛΥΚΕΙΟΥ ΣΠΟΥΔΕΣ ΟΙΚΟΝΟΜΙΑΣ & ΠΛΗΡΟΦΟΡΙΚΗΣ

Ψευδοκώδικας. November 7, 2011

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ Κεφάλαιο 2 ο

ΘΕΜΑ Β Β1. Να συμπληρώσετε τις παρακάτω προτάσεις χρησιμοποιώντας τις λέξεις Θεωρητική ή Εφαρμοσμένη:

Μεθοδολογία προβλημάτων με Δομή Επανάληψης

ΘΕΜΑ Α. Α2. Να αναφέρετε από τι εξαρτάται η επιλογή του καλύτερου αλγορίθμου ταξινόμησης. Μονάδες 4. Σελίδα 1 από 8

ΜΑΘΗΜΑ / ΤΑΞΗ : ΑΕΠΠ / Γ ΓΕ.Λ. ΟΙΚ & ΠΛΗΡ (ΘΕΡΙΝΑ) ΗΜΕΡΟΜΗΝΙΑ: ΕΠΙΜΕΛΕΙΑ ΔΙΑΓΩΝΙΣΜΑΤΟΣ: ΓΙΑΝΝΗΣ ΜΙΧΑΛΕΑΚΟΣ ΘΕΜΑ Α

Φυσικές και τεχνητές γλώσσες. Το αλφάβητο της ΓΛΩΣΣΑΣ, Τύποι Δεδομένων. Σταθερές, Μεταβλητές, Τελεστές, Συναρτήσεις, Δομή Προγράμματος

Κεφάλαιο 7 Βασικά Θέματα Προγραμματισμού. Εφαρμογές Πληροφορικής Κεφ. 7 Καραμαούνας Πολύκαρπος 1

ΑΕΠΠ 2o Επαναληπτικό Διαγώνισμα

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ _ ΦΥΛΛΟ2

ΠΑΝΕΠΙΣΤΗΜΙΟ AΙΓΑIΟΥ & ΑΕΙ ΠΕΙΡΑΙΑ Τ.Τ. Τμήματα Ναυτιλίας και Επιχειρηματικών Υπηρεσιών & Μηχ. Αυτοματισμού ΤΕ. Εισαγωγή στη Python

Διάγραμμα Ροής. Σελίδα 1 από 10

1 η εξεταστική περίοδος από 20/10/2013 έως 17/11/2013. γραπτή εξέταση στο μάθημα Α ΝΑΠΤΥΞΗ ΕΦΑΡΜ Ο ΓΩ Ν ΣΕ ΠΡΟΓΡ ΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ Γ ΛΥΚΕΙΟΥ

viii. Α[7] Α[1] Α[3] + Α[8] 2. Δίνεται οι παρακάτω πίνακες ακεραίων Α και Β

Παράδειγμα 2. Λύση & Επεξηγήσεις. Τέλος_επανάληψης Εμφάνισε "Ναι" Τέλος Α2

Φάσμα προπαρασκευή για Α.Ε.Ι. & Τ.Ε.Ι.

Transcript:

3 ο ΓΕΛ ΓΑΛΑΤΣΙΟΥ Επιμέλεια: Ζαλαβρά Ελένη ΥΠΟΣΤΗΡΙΚΤΙΚΟ ΥΛΙΚΟ ΓΙΑ ΤΟ ΜΑΘΗΜΑ ΤΗΣ Β ΛΥΚΕΙΟΥ ΕΙΣΑΓΩΓΗ ΣΤΙΣ ΑΡΧΕΣ ΤΗΣ ΕΠΙΣΤΗΜΗΣ ΤΩΝ Η/Υ ΚΕΦΑΛΑΙΟ 2.2 ΑΛΓΟΡΙΘΜΟΙ ΒΑΣΙΚΕΣ ΣΥΝΙΣΤΩΣΕΣ / ΕΝΤΟΛΕΣ ΕΝΟΣ ΑΛΓΟΡΙΘΜΟΥ Για την κωδικοποίηση ενός αλγόριθμου χρησιμοποιούμε μια τυποποιημένη «ψευδογλώσσα» η βασική σύνταξη της οποίας είναι: Αλγόριθμος Όνομα Εντολές Τέλος Όνομα Στο τμήμα των εντολών η πρώτη ενέργεια που γίνεται είναι η είσοδος των δεδομένων χρησιμοποιώντας το ρήμα «διαβάζω» σε προστακτική δηλ. Διάβασε, συνοδευόμενο με το όνομα μιας ή περισσοτέρων μεταβλητών. Με την εντολή «Διάβασε» εννοείται ότι η μεταβλητή θα πάρει κάποια τιμή ως περιεχόμενο, η οποία μπορεί να αλλάξει στην συνέχεια. Οι μεταβλητές, χρησιμοποιούνται για να παραστήσουν δεδομένα που μπορούν να αλλάζουν τιμή κατά την εκτέλεση του αλγόριθμου. Κάθε μεταβλητή προσδιορίζεται από τρία στοιχεία: όνομα, τύπο δεδομένων και τιμή δεδομένου. Για την σύνθεση του ονόματος μιας μεταβλητής μπορούμε να χρησιμοποιήσουμε αλφαβητικούς χαρακτήρες πεζούς και κεφαλαίους του ελληνικού και αγγλικού αλφαβήτου, αριθμητικούς, και την κάτω παύλα «_». Ο τύπος μιας μεταβλητής καθορίζεται ανάλογα με το είδος της τιμής που μπορεί να λάβει, και διακρίνεται σε αριθμητική, αλφαριθμητική και λογική. Σε ότι αφορά στο φυσικό νόημα μιας μεταβλητής, πρόκειται για μία περιοχή της μνήμης η οποία δεσμεύεται από το πρόγραμμα για την καταχώρηση (προσωρινή αποθήκευση) των δεδομένων της οντότητας που περιγράφει. Αντίστοιχα η τελευταία ενέργεια που γίνεται πριν ολοκληρωθεί ο αλγόριθμος είναι η έξοδος της πληροφορίας (αποτελεσμάτων) χρησιμοποιώντας το ρήμα «εμφανίζω» ή «εκτυπώνω» σε προστακτική δηλ. Εμφάνισε, ή Εκτύπωσε για την έξοδο σε οθόνη ή σε εκτυπωτή, συνοδευόμενο με το όνομα μιας ή περισσοτέρων μεταβλητών. Οι μεταβλητές που χρησιμοποιούνται στην έξοδο θα πρέπει να έχουν κατά την διάρκεια του αλγόριθμου υπολογιστεί να έχουν δηλαδή κάποια τιμή ως περιεχόμενο, το οποίο και αποτυπώνεται στη έξοδο. Αλγόριθμος Όνομα Διάβασε δ Υπόλοιπες Εντολές Εμφάνισε π Τέλος Όνομα 1

Για την αντιμετώπιση απλών προβλημάτων, όπου απαιτούνται σειριακά βήματα, χρησιμοποιείται η ακολουθιακή δομή εντολών. Λέμε τότε ότι ο αλγόριθμος μας έχει ΔΟΜΗ ΑΚΟΛΟΥΘΙΑΣ Αν για παράδειγμα θέλαμε να δημιουργήσουμε έναν αλγόριθμο, ο οποίος να διαβάζει τη βάση και το ύψος και να υπολογίζει και να εμφανίζει το εμβαδόν ενός τριγώνου. Από τις μέχρι στιγμής γνώσεις μας έχουμε: Αλγόριθμος Εμβαδόν_Τριγώνου Διάβασε β Διάβασε υ Υπόλοιπες Εντολές Εμφάνισε ε Τέλος Εμβαδόν_Τριγώνου Παρατηρήσεις - Επειδή το όνομα που δίνω στον αλγόριθμο μου αποτελείται από δύο λέξεις τις ενώνω με «_» - Χρησιμοποιώ την μεταβλητή: β για να καταχωρήσω την τιμή της βάσης του τριγώνου - Χρησιμοποιώ την μεταβλητή: υ για να καταχωρήσω την τιμή του ύψους του τριγώνου - Χρησιμοποιώ την μεταβλητή: ε για να εμφανίσω στην οθόνη το εμβαδόν του τριγώνου - Πρέπει να έχω το ίδιο όνομα στον αλγόριθμο στην αρχή και στο τέλος. Οι υπόλοιπες εντολές οι οποίες απαιτούνται σύμφωνα με τις γνώσεις μας από τα μαθηματικά είναι μία απλή εξίσωση υπολογισμού του εμβαδού του τριγώνου: Στην κωδικοποίηση ενός αλγόριθμου δεν μπορώ να χρησιμοποιήσω την παραπάνω έκφραση γιατί: 2 οι αριθμητικοί τελεστές που χρησιμοποιούνται είναι: +, -, *, /, ^ το σύμβολο = της ισότητας από τα μαθηματικά, χρησιμοποιείται για σύγκριση, για να αποδοθεί η έννοια της εκχώρησης τιμής χρησιμοποιούμαι το αριστερό βελάκι ( ). Η γενικότερη μορφή σύνταξης της εντολής εκχώρησης είναι: Μεταβλητή Έκφραση Η λειτουργία της εντολής εκχώρησης είναι ο υπολογισμός της τιμής της έκφρασης που υπάρχει στα δεξιά του συμβόλου εκχώρησης ( ) και το αποτέλεσμα να αποδίδεται, μεταβιβάζεται, εκχωρείται στη μεταβλητή. Η έκφραση μπορεί να είναι μία σταθερή, μία μεταβλητή ή μια μαθηματική παράσταση, η οποία αποτελείται από μεταβλητές και σταθερές που συνδέονται με αριθμητικούς τελεστές. Σύμφωνα με τα παραπάνω η μαθηματική εξίσωση στον αλγόριθμο θα αναπαρασταθεί ως εξής: ε β * υ / 2 Πρακτικές συμβουλές Δεν χρησιμοποιούμε σε εντολή εξόδου μεταβλητή η οποία δεν έχει προηγουμένως πάρει τιμή. Δεν χρησιμοποιούμε σε έκφραση εντολής εκχώρησης μεταβλητή η οποία δεν έχει προηγουμένως πάρει τιμή. (Μεταβλητή Έκφραση) Προσοχή στην χρήση των μαθηματικών εξισώσεων β1 β2 π.χ ε υ γίνεται: ε (β1+β2)*υ/2 2 π.χ y=x 2 +5x+1 γίνεται y x^2+5*x+1 2

Μπορούμε να χρησιμοποιήσουμε τους παρακάτω μαθηματικούς τελεστές: Αριθμητικός Τελεστής / Πράξη + Πρόσθεση - Αφαίρεση * Πολλαπλασιασμός / Διαίρεση ^ Ύψωση σε Δύναμη Η ιεραρχία των πράξεων είναι η εξής: 1. Προηγούνται οι πράξεις μέσα σε παρενθέσεις 2. ^ Ύψωση σε Δύναμη 3. *, / Πολλαπλασιασμός, Διαίρεση 4. +, - Πρόσθεση, Αφαίρεση Οι πράξεις που έχουν την ίδια ιεραρχία γίνονται από αριστερά προς τα δεξιά. Η τελική μορφή του αλγόριθμου για τον υπολογισμό του εμβαδού ενός τριγώνου είναι: Πρέπει επίσης να σημειωθεί ότι θα μπορούσαμε να χρησιμοποιήσουμε μία εντολή εισόδου δεδομένων που να περιλαμβάνει δυο ή και περισσότερες μεταβλητές, χωρίζοντας απλώς τις μεταβλητές μεταξύ τους με κόμμα «,» (Το ίδιο ισχύει και για τις εντολές εξόδου) Αλγόριθμος Εμβαδόν_Τριγώνου Διάβασε β Διάβασε υ ε β*υ /2 Εμφάνισε ε Τέλος Εμβαδόν_Τριγώνου Αλγόριθμος Εμβαδόν_Τριγώνου Διάβασε β, υ ε β*υ /2 Εμφάνισε ε Τέλος Εμβαδόν_Τριγώνου Κατά την κωδικοποίηση και εκτέλεση σε Η/Υ ο παραπάνω αλγόριθμος θα περιμένει από τον χρήστη να εισάγει από το πληκτρολόγιο δυο τιμές και στην συνέχεια θα εμφανίζει το αποτέλεσμα που αντιστοιχεί στην εξίσωση υπολογισμού του εμβαδού ενός τριγώνου που έχει βάση και ύψος τις δυο τιμές που πληκτρολόγησε ο χρήστης. Για να είναι φιλικότερη και σαφέστερη η εκτέλεση του αλγόριθμου πολλές φορές ζητείται η εμφάνιση διευκρινιστικών μηνυμάτων κατά την εκτέλεση του αλγόριθμου. Π.χ: Αλγόριθμος Εμβαδόν_Τριγώνου Εμφάνισε Παρακαλώ εισάγετε την βάση του τριγώνου Διάβασε β Εμφάνισε Παρακαλώ εισάγετε το ύψος του τριγώνου Διάβασε υ ε β*υ /2 Εμφάνισε Το εμβαδόν του τριγώνου είναι:, ε Τέλος Εμβαδόν_Τριγώνου Παρατηρήσεις - Χρησιμοποιώ διπλά εισαγωγικά με την εντολή «Εμφάνισε» για κείμενο - Χρησιμοποιώ διπλά εισαγωγικά για κείμενο και στην συνέχεια μεταβλητή χωρίζοντας τα με κόμμα «,» Κατά την εκτέλεση του σε Η/Υ ο νέος φιλικότερος αλγόριθμος: θα εμφανίζει μήνυμα στον χρήστη να εισάγει την βάση του τριγώνου και θα περιμένει την εισαγωγή τιμής από το πληκτρολόγιο, θα εμφανίζει νέο μήνυμα στον χρήστη να εισάγει το ύψος του τριγώνου και θα περιμένει την εισαγωγή τιμής από το πληκτρολόγιο θα εμφανίζει μήνυμα «Το εμβαδόν του τριγώνου είναι» και αμέσως μετά την τιμή που αντιστοιχεί στην εξίσωση υπολογισμού. 3

ΠΑΡΑΔΕΙΓΜΑΤΑ ΑΛΓΟΡΙΘΜΩΝ ΜΕ ΔΟΜΗ ΑΚΟΛΟΥΘΙΑΣ Π1. Μία εταιρία προτίθεται να δώσει δώρο τα Χριστούγεννα στα παιδιά των εργαζόμενων της. Για κάθε παιδί το δώρο θα κοστίσει 12. Να γραφεί αλγόριθμος ο οποίος να διαβάζει πόσα παιδιά έχουν οι εργαζόμενοι της εταιρίας και να υπολογίζει και να εμφανίζει το συνολικό ποσό που χρειάζεται η εταιρία να διαθέσει για όλα τα δώρα. Αλγόριθμος Δώρο Διάβασε π δ π *12 Εμφάνισε δ Τέλος Δώρο Στην εκφώνηση επισημαίνω την έκφραση: «να διαβάζει πόσα παιδιά έχουν οι εργαζόμενοι της εταιρίας» και συμπεραίνω ότι έχω να διαβάσω μόνο ένα δεδομένο. Χρησιμοποιώ την μεταβλητή π για να αναπαραστήσω τα παιδιά των εργαζόμενων. Στην εκφώνηση επισημαίνω την έκφραση: «να υπολογίζει και να εμφανίζει το συνολικό ποσό που χρειάζεται η εταιρία να διαθέσει για όλα τα δώρα» και έτσι συμπεραίνω ότι χρειάζεται να υπολογίσω μόνο ένα αποτέλεσμα, το χρηματικό ποσό που θα κοστίσουν τα δώρα των παιδιών. Χρησιμοποιώ την μεταβλητή δ για να αναπαραστήσω το ποσό. Στην εκφώνηση επισημαίνω την έκφραση: «για κάθε παιδί το δώρο θα κοστίσει 12» και έτσι για τον υπολογισμό του ποσόυ που θα κοστίσουν τα δώρα προκύπτει η μαθηματική εξίσωση: δ π *12 Π2. Μία εταιρία θα δώσει έκτακτο επίδομα ισολογισμού στους εργαζόμενους της ίσο με το 3% του μισθού τους. Να γραφεί αλγόριθμος ο οποίος να διαβάζει τον μισθό ενός εργαζόμενου και να υπολογίζει και να εμφανίζει το επίδομα που αναμένεται να πάρει. Αλγόριθμος Επίδομα Διάβασε μ ε μ *3/100 Εμφάνισε ε Τέλος Επίδομα Στην εκφώνηση επισημαίνω την έκφραση: «να διαβάζει τον μισθό ενός εργαζόμενου» και συμπεραίνω ότι έχω να διαβάσω μόνο ένα δεδομένο. Χρησιμοποιώ την μεταβλητή μ για να αναπαραστήσω το μισθό του εργαζόμενου. Στην εκφώνηση επισημαίνω την έκφραση: «να υπολογίζει και να εμφανίζει το επίδομα που αναμένεται να πάρει» και έτσι συμπεραίνω ότι χρειάζεται να υπολογίσω μόνο ένα αποτέλεσμα, το χρηματικό ποσό που θα πάρει ως επίδομα ο εργαζόμενος. Χρησιμοποιώ την μεταβλητή ε για να αναπαραστήσω το επίδομα. Στην εκφώνηση επισημαίνω την έκφραση: «επίδομα ισολογισμού στους εργαζόμενους της ίσο με το 3% του μισθού τους.» και έτσι για τον υπολογισμό του ποσόυ που θα κοστίσουν τα δώρα προκύπτει η μαθηματική εξίσωση: ε μ *3/100 Όταν υπάρχει αναφορά σε ποσοστό % συστήνεται η αξιοποίηση από τα μαθηματικά της απλής μεθόδου των τριών. Πχ στο παράδειγμα μας: 100 3 Δηλαδή: σε μισθό 100 θα έχει επίδομα 3 μ? σε μισθό μ πόσο επίδομα θα έχει; Σε εκφωνήσεις με ποσοστά θα πρέπει να δίνεται προσοχή στην εκφώνηση αν το αποτέλεσμα που ζητείται αφορά μόνο το ποσοστό ή συνδυάζεται με το αρχικό ποσό. Πχ αν στην παραπάνω εκφώνηση αντί για: «να υπολογίζει και να εμφανίζει το επίδομα που αναμένεται να πάρει» ανέφερε: «να υπολογίζει και να εμφανίζει το νέο μισθό που προκύπτει λόγω του επιδόματος» θα έπρεπε να υπολογίσουμε τον νέο μισθό (μεταβλητή: νμ) που προκύπτει από τον παλιό μισθό συν το επίδομα, δηλαδή οι υπολογισμοί θα έπρεπε να είναι: ε μ *3/100 νμ μ + ε ή με μία μόνο εξίσωση: νμ μ + μ *3/100 4

ΔΟΜΗ ΕΠΙΛΟΓΗΣ Για την κατανόηση των παρακάτω αλγοριθμικών δομών επιλογής είναι απαραίτητη η κατανόηση της έννοιας «Λογική συνθήκη» ή απλά «Συνθήκη» όπως αναφέρεται στην συνέχεια για συντομία. Όταν λοιπόν η επίλυση του προβλήματος μας δεν έχει μια και μοναδική λύση που εκφράζεται από μία ακολουθία εντολών αλλά εξαρτάται και μπορεί να διαφοροποιηθεί σύμφωνα με μία ή περισσότερες επιλογές / περιπτώσεις τότε αυτές οι επιλογές / περιπτώσεις εκφράζονται ως λογικές συνθήκες. Μια απλή λογική συνθήκη συντάσσεται: Παράσταση1 Τελεστής_Σύγκρισης Παράσταση2 Οι τελεστές σύγκρισης είναι οι γνωστοί μας από τα μαθηματικά: > μεγαλύτερο μεγαλύτερο ή ίσο < μικρότερο μικρότερο ή ίσο = ίσο διάφορο Η παράσταση μπορεί να είναι: Μια τιμή Μια μεταβλητή Μια μαθηματική παράσταση Παραδείγματα λογικών συνθηκών: Σύγκριση (της τιμής) μίας μεταβλητής με μία σταθερή τιμή x>0 Σύγκριση (της τιμής) μίας μεταβλητής με (την τιμή) μίας άλλης μεταβλητής x y Σύγκριση (της τιμής) μίας μαθηματικής παράστασης με μία σταθερή τιμή α*β=10 Σύγκριση (της τιμής) μίας μαθηματικής παράστασης με (την τιμή) μίας μεταβλητής α*β γ Σύγκριση (της τιμής) μίας μαθηματικής παράστασης με (την τιμή) μίας άλλης μαθηματικής παράστασης x/y 2*z Διευκρινίζεται ότι σε κάθε περίπτωση: Οι μεταβλητές που συμμετέχουν σε μία λογική συνθήκη θα πρέπει να έχουν τιμή, δηλαδή σε προηγούμενες εντολές του αλγορίθμου μας να τους έχει εκχωρηθεί τιμή, είτε μία σταθερή τιμή (π.χ x 5) είτε μέσω κάποιου υπολογισμού (π.χ x 3/4*y) Εκτός από τις απλές λογικές συνθήκες μπορούμε να έχουμε και σύνθετες λογικές συνθήκες. Μια σύνθετη λογική συνθήκη συντάσσεται: Συνθήκη1 ΚΑΙ Συνθήκη2 Συνθήκη1 Ή Συνθήκη2 ΟΧΙ (Συνθήκη) Σ1 Ψευδής Σ2 Ψευδής Σ1 ΚΑΙ Σ2 Ψευδής Ψευδής Σ1 Ή Σ2 ΟΧΙ Σ1 Ψευδής Ψευδής Παραδείγματα σύνθετων λογικών συνθηκών: x>2 ΚΑΙ y>5 Συγκρίνεται η τιμή της μεταβλητής x με το 2, και η τιμή της μεταβλητής y με το 5. Όταν ισχύει x>2 ΚΑΙ ταυτόχρονα y>5 η σύνθετη λογική συνθήκη είναι αληθής, ενώ σε οποιαδήποτε άλλη περίπτωση είναι ψευδής. x y H x z Συγκρίνεται η τιμή της μεταβλητής x με την τιμή της μεταβλητής y, και την τιμή της μεταβλητής z. Όταν ισχύει x<=y H x<=z δηλαδή τουλάχιστον μία από τις δύο συνθήκες να είναι αληθής τότε και η σύνθετη λογική συνθήκη είναι αληθής, ενώ μόνο όταν δεν ισχύουν ταυτόχρονα και οι δύο είναι ψευδής. x 0 ΚΑΙ x 20 Με αυτή την σύνθετη λογική συνθήκη μπορούμε για παράδειγμα να ελένξουμε την τιμή της μεταβλητής x σε περίπτωση που μαθηματικά χρειάζεται να αναπαραστήσουμε μία διπλή ανίσωση, π.χ 0 x 20. Με την ευκαιρία αυτού του παραδείγματος τονίζεται ότι: Δεν επιτρέπεται στις λογικές συνθήκες ενός αλγόριθμου να χρησιμοποιήσουμε διπλές ανισώσεις. Εάν χρειάζεται να ελένξουμε συνήθως την τιμή μιας μεταβλητής σε ένα κλειστό διάστημα τότε χρησιμοποιούμε σύνθετη λογική συνθήκη όπως στο παραπάνω παράδειγμα. (α>β ΚΑΙ α*β 0) ΚΑΙ γ 10 Ψευδής Ψευδής Ψευδής Ψευδής Όπως φαίνεται σε αυτό το παράδειγμα μπορούμε να συνδυάσουμε περισσότερες σύνθετες λογικές συνθήκες ομαδοποιώντας τες σε παρενθέσεις ανά δύο. Έτσι εδώ για παράδειγμα ελέγχονται πρώτα οι συνθήκες: α>β ΚΑΙ α*β<>0 και το αποτέλεσμα τους στην συνέχεια με την συνθήκη: γ<=10 5

Σύνταξη Δομής επιλογής 1. Απλή Επιλογή Όταν χρειάζεται να ελένξουμε αν μία συνθήκη είναι αληθής και τότε να εκτελεστούν μία ή περισσότερες εντολές ενώ όταν είναι ψευδής να μην γίνει τίποτα. Αν <συνθήκη> τότε Στην απλή επιλογή, οι εντολές που ακολουθούν το «Αν» εκτελούνται μόνο αν η συνθήκη είναι αληθής, σε περίπτωση που δεν ισχύει (είναι ψευδής) τότε δεν εκτελούνται οι εντολές μετά το «Αν». Και στις δύο περιπτώσεις ο αλγόριθμος συνεχίζεται με τις εντολές μετά το Σε όλα τα παραδείγματα αλγορίθμων που ακολουθούν, θεωρούμε ότι δεν γίνονται λάθη κατά την καταχώρηση των δεδομένων. Π.χ κατά την είσοδο τιμής σε μία μεταβλητή που αφορά βαθμολογία ότι δεν δίδονται αρνητικές τιμές Π3. Να γραφεί αλγόριθμος ο οποίος να διαβάζει τον βαθμό ενός μαθητή και να εμφανίζει το μήνυμα «Προάγεται» εφόσον ο μαθητής έχει βαθμό άνω του 9,5 Αλγόριθμος Μαθητής Διάβασε Β Αν Β 9,5 τότε Εμφάνισε Προάγεται Τέλος Μαθητής 2. Σύνθετη επιλογή Όταν χρειάζεται να ελένξουμε αν μία συνθήκη είναι αληθής και τότε να εκτελεστούν μία ή και περισσότερες εντολές ενώ όταν είναι ψευδής να εκτελεστούν κάποιες άλλες εντολές χρησιμοποιούμε την σύνταξη: Αν <συνθήκη> τότε Στην σύνθετη επιλογή, οι εντολές που ακολουθούν το «Αν» εκτελούνται μόνο αν η συνθήκη είναι αληθής, σε περίπτωση που δεν ισχύει (είναι ψευδής) τότε εκτελούνται οι εντολές που ακολουθούν το. Σε καμία περίπτωση δεν εκτελούνται όλες οι εντολές, ενώ και στις δύο περιπτώσεις ο αλγόριθμος συνεχίζεται με τις εντολές μετά το Π4. Να γραφεί αλγόριθμος ο οποίος να διαβάζει τον βαθμό ενός μαθητή και να εμφανίζει το μήνυμα «Προάγεται» εφόσον ο μαθητής έχει βαθμό άνω του 9,5, διαφορετικά να εμφανίζει «Απορρίπτεται» Αλγόριθμος Μαθητής Διάβασε Β Αν Β<9,5 τότε Εμφάνισε Απορρίπτεται Εμφάνισε Προάγεται Τέλος Μαθητής Για να μην μπερδέψουμε τις δομές επιλογής, ή για να μην ξεχάσουμε να ολοκληρώσουμε μια επιλογή με το συστήνεται (χωρίς να είναι υποχρεωτικό) να τηρούμε την παραγραφοποίηση 6

3. Πολλαπλή Επιλογή Αν <συνθήκη_1> τότε _αν <συνθήκη_2> τότε... _αν <συνθήκη_ν> τότε Π5. Να γραφεί αλγόριθμος ο οποίος να διαβάζει τον βαθμό ενός μαθητή και να εμφανίζει το κατάλληλο μήνυμα σύμφωνα με τον σχετικό πίνακα: Βαθμολογία Χαρακτηρισμός 0 ως 9,5 Απορρίπτεται από 9,5 ως 15 Καλός από 15 ως 18 Πολύ Καλός από 18 και άνω Άριστος Αλγόριθμος Μαθητής Διάβασε Β Αν Β<9,5 τότε Εμφάνισε Απορρίπτεται _αν Β<15 τότε Εμφάνισε Καλός _αν Β<18 τότε Εμφάνισε Πολύ Καλός Εμφάνισε Άριστος Τέλος Μαθητής Στην πολλαπλή επιλογή, ελέγχεται πρώτα η συνθήκη_1 του «Αν» και αν είναι αληθής εκτελούνται οι εντολές που ακολουθούν τον «Αν», και ο αλγόριθμος συνεχίζεται με τις εντολές που ακολουθούν το (δεν ελέγχονται και οι υπόλοιπες συνθήκες). Σε περίπτωση που η συνθήκη_1 του «Αν» είναι ψευδής ελέγχεται η συνθήκη_2 της πρώτης «_αν» και αν είναι αληθής εκτελούνται οι εντολές που την ακολουθούν, σε περίπτωση που δεν ισχύει (είναι ψευδής) τότε ελέγχονται οι υπόλοιπες συνθήκες των «_αν» έως ότου κάποια είναι αληθής, οπότε εκτελούνται οι εντολές που την ακολουθούν και ο αλγόριθμος δεν ελέγχει άλλες συνθήκες συνεχίζοντας με τις εντολές που ακολουθούν το Σε περίπτωση που καμία συνθήκη «Αν» ή «_αν» δεν είναι αληθής τότε εκτελούνται οι εντολές που ακολουθούν το και όπως και σε όλες τις περιπτώσεις ο αλγόριθμος συνεχίζεται με τις εντολές μετά το ΠΡΟΣΟΧΗ! ΣΕ ΠΟΛΛΑΠΛΗ ΕΠΙΛΟΓΗ ΤΙΣ ΣΥΝΘΗΚΕΣ ΠΟΥ ΧΡΗΣΙΜΟΠΟΙΕΙΤΕ Π.χ σε περιπτώσεις που δίνεται πίνακας όπως στο παραπάνω παράδειγμα Π5 όπου οι τιμές που μπορεί να πάρει η βαθμολογία είναι συνεχόμενες Ο προτεινόμενος αλγόριθμος είναι: Αν Β<9,5 τότε Εμφάνισε Απορρίπτεται _αν Β<15 τότε Εμφάνισε Καλός _αν Β<18 τότε Εμφάνισε Πολύ Καλός Εμφάνισε Άριστος Βαθμολογία Χαρακτηρισμός 0 ως 9,5 Απορρίπτεται από 9,5 ως 15 Καλός από 15 ως 18 Πολύ Καλός από 18 και άνω Άριστος Αποφύγετε να χρησιμοποιήσετε περιττές συνθήκες ως εξής: Αν Β<9,5 τότε Εμφάνισε Απορρίπτεται _αν Β 9,5 ΚΑΙ Β<15 τότε Εμφάνισε Καλός _αν Β 15 ΚΑΙ Β<18 τότε Εμφάνισε Πολύ Καλός Εμφάνισε Άριστος 7

ΠΑΡΑΔΕΙΓΜΑΤΑ ΑΛΓΟΡΙΘΜΩΝ ΜΕ ΔΟΜΗ ΕΠΙΛΟΓΗΣ Π6. Να γραφεί αλγόριθμος ο οποίος να διαβάζει το όνομα και το έτος γέννησης ενός δημότη και να εμφανίζει το όνομα του ακολουθούμενο από μήνυμα «Δικαίωμα ψήφου» εφόσον είναι από 18 ετών και άνω. Αλγόριθμος Ψήφος Διάβασε ον, ε η 2015 ε Αν η 18 τότε Εμφάνισε ον, Δικαίωμα ψήφου Τέλος Ψήφος Στην εκφώνηση επισημαίνω την έκφραση: «να διαβάζει το όνομα και το έτος γέννησης ενός δημότη» και συμπεραίνω ότι έχω να διαβάσω δυο δεδομένα. Χρησιμοποιώ την μεταβλητή ον για το όνομα και την μεταβλητή ε για το έτος γέννησης του δημότη. Στην εκφώνηση επισημαίνω την έκφραση: «να εμφανίζει το όνομα του ακολουθούμενο από μήνυμα «Δικαίωμα ψήφου»» και έτσι συμπεραίνω ότι χρειάζεται να έχω μια εντολή: Εμφάνισε ον, Δικαίωμα ψήφου η οποία όμως δεν θα πρέπει να εκτελείται πάντα αλλά σύμφωνα με την εκφώνηση «εφόσον είναι από 18 ετών και άνω», γι αυτό πρέπει να χρησιμοποιήσω δομή επιλογής. Στη συγκεκριμένη εκφώνηση πρέπει να προσέξω ότι ενώ τα δεδομένα μου αφορούν το έτος γέννησης, το κριτήριο της επιλογής μου είναι η ηλικία γι αυτό και κάνω έναν επιπλέον υπολογισμό για να μετατρέψω το έτος γέννησης σε ηλικία. Π7. Να γραφεί αλγόριθμος ο οποίος να διαβάζει το όνομα και το έτος γέννησης ενός δημότη και να εμφανίζει το όνομα του ακολουθούμενο από μήνυμα «Δεν έχεις δικαίωμα ψήφου» εφόσον είναι κάτω από 18 ετών και μήνυμα «Έχει δικαίωμα ψήφου» σε αντίθετη περίπτωση. Αλγόριθμος Ψήφος Διάβασε ον, ε η 2015 ε Αν η < 18 τότε Εμφάνισε ον, Δεν έχεις δικαίωμα ψήφου Εμφάνισε ον, Έχεις δικαίωμα ψήφου Τέλος Ψήφος Π8. Να γραφεί αλγόριθμος ο οποίος να διαβάζει το όνομα και το έτος γέννησης ενός δημότη και να εμφανίζει το όνομα του ακολουθούμενο από μήνυμα σύμφωνα με τον διπλανό πίνακα. Ηλικία Μικρότερη των18 Από 18 ως και 65 Αλγόριθμος Ψήφος Άνω των 65 Διάβασε ον, ε η 2015 ε Αν η < 18 τότε Εμφάνισε ον, δεν έχετε δικαίωμα ψήφου _αν η 65 τότε Εμφάνισε ον, έχετε υποχρέωση να ψηφίσετε Εμφάνισε ον, έχετε δικαίωμα ψήφου αλλά μπορείτε να απέχετε Τέλος Ψήφος Μήνυμα δεν έχετε δικαίωμα ψήφου έχετε υποχρέωση να ψηφίσετε έχετε δικαίωμα ψήφου αλλά μπορείτε να απέχετε 8

Π9. Να γραφεί αλγόριθμος ο οποίος για ένα δανειολήπτη να διαβάζει το ποσό του δανείου που έλαβε και τον αριθμό των δόσεων που επιθυμεί να το αποπληρώσει και να υπολογίζει σύμφωνα με τον παρακάτω πίνακα την επιβάρυνση (ποσό τόκων) που θα πρέπει να πληρώσει. Αριθμός Τόκος % Δόσεων 12 6 24 7 48 8 120 10 Αλγόριθμος Δάνειο Διάβασε π, δ Αν δ=12 τότε τ 6 _αν δ=24 τότε τ 7 _αν δ=48 τότε τ 8 _αν δ=120 τότε τ 10 ε π*τ/100 Εμφάνισε ε Τέλος Δάνειο Στην προτεινόμενη λύση όπως βλέπετε δεν υπάρχει στην σύνταξη της δομής επιλογής μας το σκέλος:. Γενικότερα δεν είναι υποχρεωτικό να υπάρχει το στην σύνταξη μιας πολλαπλής επιλογής. Στο συγκεκριμένο παράδειγμα προκύπτει φυσικά θέμα καθοριστικότητας, γιατί στην περίπτωση που δεν δοθεί στην μεταβλητή δ κάποια από τις προκαθορισμένες τιμές, τότε η μεταβλητή τ δεν θα πάρει τιμή και δεν θα μπορεί να εκτελεστεί η εντολή εκχώρησης: ε π*τ/100. Προς το παρόν ισχύει ότι: Θεωρούμε ότι κατά την είσοδο τιμών στα δεδομένα δίδονται σωστές τιμές και προσεχώς θα έχουμε την δυνατότητα να ελέγχουμε την εγκυρότητα των τιμών που δίδονται στα δεδομένα μας. Στο παράδειγμα που ακολουθεί μπορείτε να δείτε πως θα χρησιμοποιήσουμε αλφαριθμητική μεταβλητή στην συνθήκη μας, και ότι παρόμοια δεν θα χρησιμοποιήσουμε το σκέλος του στην πολλαπλή επιλογή μας. Π10. Να γραφεί αλγόριθμος ο οποίος να διαβάζει την κατηγορία στην οποία ανήκει ο θεατής ενός θεάτρου και να εμφανίζει το ποσό που θα πρέπει να πληρώσει. Το αντίτιμο του εισιτηρίου είναι 30 και οι κατηγορίες είναι: K για κανονικό, Φ για φοιτητικό με έκπτωση 50%, και Σ για συνταξιούχους με έκπτωση 25%. Θεωρούμε ότι κατά την είσοδο των δεδομένων δίδονται σωστές τιμές. Αλγόριθμος Εισιτήριο Διάβασε τ Αν τ= K τότε α 30 _αν τ= Φ τότε α 30-30*50/100 _αν τ= Σ τότε α 30-30*25/100 Εμφάνισε Αντίτιμο εισιτηρίου,α Τέλος Εισιτήριο Π11. Να γραφεί αλγόριθμος ο οποίος για ένα διαγνωστικό εργαστήριο να διαβάζει τις μετρήσεις της συστολικής (μεγάλης) πίεσης και της διαστολικής (μικρής) πίεσης ενός ασθενούς και να τον χαρακτηρίζει ως «Φυσιολογικό» ή «Υπερτασικό». Για να θεωρηθεί κάποιος υπερτασικός πρέπει η συστολική του πίεση να είναι μεγαλύτερη από 14 ή η διαστολική του πίεση μεγαλύτερη από 9. Αλγόριθμος Πίεση Διάβασε σ, δ Αν σ>14 Ή δ>9 τότε Εμφάνισε Υπερτασικός αλλιώς Εμφάνισε Φυσιολογικός Τέλος_Αν Τέλος Πίεση ή Αλγόριθμος Πίεση Διάβασε σ, δ Αν σ 14 ΚΑΙ δ 9 τότε Εμφάνισε Φυσιολογικός Εμφάνισε Υπερτασικός Τέλος_Αν Τέλος Πίεση 9

ΔΟΜΗ ΕΠΙΛΟΓΗΣ ΕΜΦΩΛΕΥΜΕΝΕΣ ΔΙΑΔΙΚΑΣΙΕΣ Σε πολλούς αλγόριθμους μπορούμε να έχουμε πολλαπλές επιλογές με την ενσωμάτωση μια δομής επιλογής μέσα σε μια άλλη. Η ομάδα εντολών δηλαδή που περιλαμβάνεται μέσα σε μια δομή επιλογής να περιέχει με την σειρά της μια άλλη εντολή επιλογής. Π.χ Αν <συνθήκη> τότε Αν <συνθήκη_2> τότε Η χρήση εμφωλευμένων «Αν» οδηγεί σε πολύπλοκες δομές που αυξάνουν την πιθανότητα λάθους. Προτιμούμε λοιπόν εφόσον είναι εφικτό να χρησιμοποιήσουμε πολλαπλή επιλογή ή σύνθετες συνθήκες. Για να μην μπερδέψουμε τις δομές επιλογής, ή για να μην ξεχάσουμε να ολοκληρώσουμε μια επιλογή με το είναι πολύ σημαντικό να τηρούμε την παραγραφοποίηση. Π12. Να γραφεί αλγόριθμος ο οποίος να διαβάζει το φύλο ενός ανθρώπου ( A για άνδρα και Γ γυναίκα) και το ύψος του. Στην συνέχεια να εμφανίζει μήνυμα «Ψηλός/η» ή «Κοντός/η» με κριτήριο για τους άνδρες τα 1,80μ και για τις γυναίκες τα 1,65μ Αλγόριθμος Υψος_1 Διάβασε φ, υ Αν φ= A τότε Αν υ<1,80 τότε Εμφάνισε Κοντός Εμφάνισε Ψηλός Αν υ<1,65 τότε Εμφάνισε Κοντή Εμφάνισε Ψηλή Τέλος Υψος_1 Στην 1 η λύση χρησιμοποιούμε μια σύνθετη επιλογή για το φύλο και εμφωλευμένα σε κάθε κλάδο της σύνθετης επιλογής ελέγχουμε με σύνθετη επίσης επιλογή το ύψος. Αλγόριθμος Υψος_2 Διάβασε φ, υ Αν φ= A ΚΑΙ υ<1,80 τότε Εμφάνισε Κοντός _αν φ= A ΚΑΙ υ>=1,80 τότε Εμφάνισε Ψηλός _αν φ= Γ ΚΑΙ υ<1,65 τότε Εμφάνισε Κοντή Εμφάνισε Ψηλή Τέλος Υψος_2 Στην 2 η λύση χρησιμοποιούμε μια πολλαπλή επιλογή όπου με σύνθετες λογικές συνθήκες ελέγχουμε ταυτόχρονα για το φύλο και το ύψος. Είναι προφανές ότι αν και οι δύο λύσεις είναι εξίσου αποδεκτές, με την 2 η λύση ο αλγόριθμος μας είναι πιο απλός / κατανοητός και κυρίως εγκυμονεί λιγότερες πιθανότητες λάθους. 10

Π13. Να γραφεί αλγόριθμος ο οποίος για την ενοικίαση ενός αυτοκινήτου: - διαβάζει την κατηγορία του («ΟΙΚΟΛΟΓΙΚΟ» ή «ΣΥΜΒΑΤΙΚΟ») και τις ημέρες ενοικίασης. ΗΜΕΡΕΣ 1-7 ΟΙΚΟΛΟΓΙΚΟ 30 ανά ημέρα ΣΥΜΒΑΤΙΚΟ 40 ανά ημέρα - υπολογίζει με βάση τον πίνακα τη 8-16 20 ανά ημέρα 30 ανά ημέρα χρέωση. - εμφανίζει το μήνυμα χρέωση και τη χρέωση που υπολογίσατε. από 17 και άνω 10 ανά ημέρα 20 ανά ημέρα Σημείωση: ο υπολογισμός της χρέωσης δεν γίνεται κλιμακωτά Αλγόριθμος Αυτοκίνητο Διάβασε κ, μ Αν κ= ΟΙΚΟΛΟΓΙΚΟ τότε Αν μ 7 τότε χ 30*μ _αν η 16 τότε χ 20*μ χ 10*μ Αν μ 7 τότε χ 40*μ _αν η 16 τότε χ 30*μ χ 20*μ Εμφάνισε χ Τέλος Αυτοκίνητο Αλγόριθμος Αυτοκίνητο Διάβασε κ, μ Αν κ= ΟΙΚΟΛΟΓΙΚΟ ΚΑΙ μ 7 τότε χ 30*μ _αν κ= ΟΙΚΟΛΟΓΙΚΟ ΚΑΙ η 16 τότε χ 20*μ _αν κ= ΟΙΚΟΛΟΓΙΚΟ ΚΑΙ η 17 τότε χ 10*μ _αν κ= ΣΥΜΒΑΤΙΚΟ ΚΑΙ μ 7 τότε χ 40*μ _αν κ= ΣΥΜΒΑΤΙΚΟ ΚΑΙ η 16 τότε χ 30*μ χ 20*μ Εμφάνισε χ Τέλος Αυτοκίνητο Αλγόριθμος Αυτοκίνητο Διάβασε κ, μ Αν μ 7 τότε Αν κ= ΟΙΚΟΛΟΓΙΚΟ τότε χ 30*μ χ 40*μ _αν η 16 τότε Αν κ= ΟΙΚΟΛΟΓΙΚΟ τότε χ 20*μ χ 30*μ Αν κ= ΟΙΚΟΛΟΓΙΚΟ τότε χ 10*μ χ 20*μ Εμφάνισε χ Τέλος Αυτοκίνητο Υπάρχουν 3 ισοδύναμες λύσεις Μπορείτε να ακολουθήσετε όποια «ταιριάζει» περισσότερο στον δικό σας τρόπο ανάλυσης του προβλήματος 11

ΔΟΜΗ ΕΠΑΝΑΛΗΨΗΣ Όταν μια ακολουθία εντολών πρέπει να εφαρμοσθεί σε ένα σύνολο περιπτώσεων Σύνταξη Δομής επανάληψης «Για» Όταν γνωρίζουμε εκ των προτέρων πόσες φορές θα εκτελεστεί μια επαναληπτική διαδικασία, μπορούμε να χρησιμοποιήσουμε την παρακάτω δομή: Για <μετρητή> από <αρχική_τιμή> μέχρι <τελική_τιμή> με_βήμα <βήμα> - Το βήμα δεν μπορεί να είναι μηδέν, γιατί δεν ικανοποιείται το κριτήριο της περατότητας - Αν το βήμα έχει θετική τιμή τότε πρέπει: αρχική_τιμή < τελική_τιμή - Αντίστοιχα αν: αρχική_τιμή > τελική_τιμή τότε το βήμα είναι αρνητικό - Αν βήμα=1 τότε μπορούμε να παραλείψουμε την αναφορά του ΤΥΠΙΚΕΣ ΠΕΡΙΠΤΩΣΕΙΣ / ΠΑΡΑΔΕΙΓΜΑΤΑ ΔΟΜΗΣ ΕΠΑΝΑΛΗΨΗΣ 1. Είσοδος συγκεκριμένου πλήθους δεδομένων Όταν σε κάποιο αλγόριθμο ζητείται να διαβάσουμε πλήθος δεδομένων π.χ αν ζητείται να διαβάσουμε τις βαθμολογίες ενός μαθητή σε 12 μαθήματα Για m από 1 μέχρι 12 Διάβασε b 2. Άθροισμα πλήθους δεδομένων Όταν σε κάποιο αλγόριθμο ζητείται να διαβάσουμε πλήθος δεδομένων τα οποία για να τα επεξεργαστούμε θα πρέπει να τα προσθέσουμε, χρησιμοποιούμε «Αθροιστή» Σ 0 Για m από 1 μέχρι 12 Διάβασε b Σ Σ+b Εμφάνισε Σ Παρατηρήσεις: Η μεταβλητή Σ είναι ο αθροιστής μας, την οποία μέσα στην επανάληψη την χρησιμοποιούμε αναδρομικά Σ Σ+b. Η έννοια της αναδρομής είναι ότι στην τιμή που έχει ο αθροιστής μας προσθέτουμε την εκάστοτε βαθμολογία που διαβάζουμε και έτσι ο αθροιστής μας έχει ως νέα τιμή την προηγούμενη συν την εκάστοτε βαθμολογία, έτσι σε κάθε επανάληψη ο αθροιστής μας ανανεώνεται. Επειδή στην πρώτη επανάληψη όπου και προστίθεται η πρώτη βαθμολογία ο αθροιστής δεν έχει τιμή γι αυτό πριν την επανάληψη μηδενίζουμε Σ 0. Προσοχή! Το αποτέλεσμα μας το εμφανίζουμε μετά το τέλος των επαναλήψεων αφού έχουν ολοκληρωθεί τα διαβάσματα και τα αθροίσματα γιατί σε αντίθετη περίπτωση (αν τοποθετούσαμε την εντολή «εμφάνισε» μέσα στην δομή επανάληψης) θα εμφανίζονταν 12 διαφορετικές τιμές από τις οποίες μόνο η τελευταία θα ήταν η σωστή δηλαδή ο τελικός αθροιστής. 12

3. Μέσος όρος πλήθους δεδομένων Ως επέκταση της παραπάνω περίπτωσης (2), όταν σε κάποιο αλγόριθμο ζητείται να διαβάσουμε πλήθος δεδομένων και να υπολογίσουμε τον μέσο όρο τους Σ 0 Για m από 1 μέχρι 12 Διάβασε b Σ Σ+b ΜΟ Σ/12 Εμφάνισε ΜΟ Παρατηρήσεις: Χρησιμοποιούμε την μεθοδολογία της παραπάνω περίπτωσης (2) και μετά το τέλος των επαναλήψεων, δηλαδή αφού έχουμε διαβάσει και αθροίσει όλες τις βαθμολογίες χρησιμοποιούμε τον αθροιστή με την γνωστή μαθηματική πράξη άθροισμα Μέσος όρος πλήθος 4. Διαχωρισμός από πλήθος δεδομένων αυτών που ικανοποιούν κάποια συνθήκη Όταν σε κάποιο αλγόριθμο ζητείται να διαβάσουμε πλήθος δεδομένων και να τα επεξεργαστούμε ελέγχοντας πόσα από αυτά ικανοποιούν κάποια συνθήκη χρησιμοποιούμε μετρητή, π.χ αν ζητείται να διαβάσουμε τις βαθμολογίες ενός μαθητή σε 12 μαθήματα και να μετρήσουμε σε πόσα από αυτά έχει βαθμολογία ίση ή άνω του 18 Π 0 Για m από 1 μέχρι 12 Διάβασε b Αν b>=18 τότε Π Π+1 Εμφάνισε Π Παρατηρήσεις: Για τον έλεγχο αν η εκάστοτε βαθμολογία είναι ίση ή υπερβαίνει το 18 χρησιμοποιούμε δομή επιλογής μέσα στην επανάληψη αμέσως μετά το διάβασμα έτσι ώστε να ελέγξουμε όλες τις βαθμολογίες. Για να μετρήσουμε το πλήθος των βαθμολογιών που ικανοποιούν την συνθήκη χρησιμοποιούμε τον βοηθητικό μετρητή Π αναδρομικά Π Π+1. Όπως και στο παράδειγμα (2.1) πριν την επανάληψη μηδενίζουμε Π 0 έτσι ώστε στην 1 η επανάληψη ο μετρητής Π να έχει αρχική τιμή 0 Μέσα στη δομή επανάληψης εφόσον στην εμφωλευμένη δομή επιλογής η συνθήκη είναι αληθής (δηλαδή εφόσον στο παράδειγμα μας η βαθμολογία είναι ίση ή άνω του 18) προσθέτουμε συν ένα στον μετρητή μας Π Π+1 Προσοχή! Το αποτέλεσμα μας το εμφανίζουμε μετά το τέλος των επαναλήψεων αφού έχουν ολοκληρωθεί τα διαβάσματα και ο έλεγχος / μέτρημα. ΠΑΡΑΔΕΙΓΜΑΤΑ ΑΛΓΟΡΙΘΜΩΝ ΜΕ ΔΟΜΗ ΕΠΑΝΑΛΗΨΗΣ Π14. Υπάρχουν 30 ολοκληρωμένα κέντρα ανταποδοτικής ανακύκλωσης σε πλατείες σε όλη την έκταση του Δήμου Αθηναίων στα οποία συλλέγονται ανακυκλώσιμα υλικά. Να αναπτύξετε έναν αλγόριθμο, ο οποίος να διαβάζει τις ποσότητες σε κιλά ανακυκλώσιμων υλικών που συγκεντρώθηκαν σε κάθε κέντρο ανακύκλωσης και να υπολογίζει και να εμφανίζει τη συνολική ποσότητα των ανακυκλώσιμων υλικών που συγκέντρωσε ο δήμος Αλγόριθμος Ανακύκλωση Σ 0 Για m από 1 μέχρι 30 Διάβασε κ Σ Σ+κ Εμφάνισε Σ Τέλος Ανακύκλωση 13

Π15. Υπάρχουν 30 ολοκληρωμένα κέντρα ανταποδοτικής ανακύκλωσης σε πλατείες σε όλη την έκταση του Δήμου Αθηναίων στα οποία στα οποία συλλέγονται ξεχωριστά: πλαστικά μπουκάλια, γυάλινα μπουκάλια, και μεταλλικοί περιέκτες. Να αναπτύξετε έναν αλγόριθμο, ο οποίος: α. να διαβάζει τις ποσότητες σε κιλά των παραπάνω υλικών που συγκεντρώθηκαν σε κάθε κέντρο ανακύκλωσης β. να υπολογίζει τη συνολική ποσότητα σε κιλά του κάθε υλικού που συγκέντρωσε ο δήμος γ. να εμφανίζει από ποιο υλικό συγκεντρώθηκε η περισσότερη ποσότητα Αλγόριθμος Ανακύκλωση Σ1 0 Σ2 0 Σ3 0 Για m από 1 μέχρι 30 Διάβασε π, γ, μ Σ1 Σ1+π Σ2 Σ2+γ Σ3 Σ3+μ Αν Σ1>Σ2 ΚΑΙ Σ1>Σ3 τότε Εμφάνισε πλαστικά μπουκάλια _αν Σ2>Σ1 ΚΑΙ Σ2>Σ3 τότε Εμφάνισε γυάλινα μπουκάλια Εμφάνισε μεταλλικοί περιέκτες Τέλος Ανακύκλωση Στην εκφώνηση επισημαίνω την έκφραση: «να διαβάζει τις ποσότητες σε κιλά των παραπάνω υλικών» και σε συνδυασμό με «συλλέγονται ξεχωριστά: πλαστικά μπουκάλια, γυάλινα μπουκάλια, και μεταλλικοί περιέκτες» συμπεραίνω ότι έχω να διαβάσω τρία δεδομένα, ένα για κάθε υλικό. Χρησιμοποιώ τις μεταβλητές π, γ, μ για τα πλαστικά μπουκάλια, τα γυάλινα μπουκάλια, και τους μεταλλικούς περιέκτες αντίστοιχα. Στην εκφώνηση επισημαίνω την έκφραση: «υπολογίζει τη συνολική ποσότητα σε κιλά του κάθε υλικού» και έτσι συμπεραίνω ότι χρειάζεται να υπολογίσω χωριστά τα σύνολα κάθε υλικού γι αυτό χρησιμοποιώ 3 αθροιστές τους Σ1, Σ2 και Σ3. Για να εμφανίσω από ποιο υλικό συγκεντρώθηκε η περισσότερη ποσότητα χρειάζεται να συγκρίνω τα σύνολα κάθε υλικού, γι αυτό αφού υπολογίσω τα σύνολα (μετά την δομή επανάληψης) συγκρίνω τους 3 αθροιστές με μια δομή πολλαπλής επιλογής και εμφανίζω ανάλογα. Π16. Να γραφεί αλγόριθμος ο οποίος για τους 28 μαθητές της τάξης να διαβάζει το φύλο τους («Α» για αγόρι ή «Κ» για κορίτσι) και το βαθμό τους στο μάθημα της Πληροφορικής. Να υπολογίζει και να εμφανίζει: το μέσο όρο βαθμολογίας της τάξης, πόσοι μαθητές ήταν άριστοι (βαθμός από 18 και άνω) ανεξαρτήτως φύλου και πόσα κορίτσια έχουν βαθμό άνω του 15 Αλγόριθμος σχολείο Σ 0 Α 0 ΜΚ 0 Για m από 1 μέχρι 28 Διάβασε β, φ Σ Σ+β Αν β 18 τότε Α Α+1 Αν φ= Κ ΚΑΙ β>15 τότε ΜΚ ΜΚ+1 ΜΟ Σ/30 Εμφάνισε ΜΟ, Α, ΜΚ Τέλος σχολείο Στην εκφώνηση επισημαίνω την έκφραση: «να διαβάζει το φύλο τους («Α» για αγόρι ή «Κ» για κορίτσι) και το βαθμό τους» και συμπεραίνω ότι έχω να διαβάσω δυο δεδομένα. Χρησιμοποιώ τις μεταβλητές φ για το φύλλο και β για το βαθμό. Για τον μέσο όρο βαθμολογίας της τάξης χρησιμοποιώ των αθροιστή Σ στον οποίο προσθέτω όλους του βαθμούς και μετά την επανάληψη διαιρώ με το πλήθος (28) των μαθητών για να υπολογίσω τον μέσο όρο βαθμολογίας όλης της τάξης. Για το πλήθος των άριστων μαθητών χρησιμοποιώ τον μετρητή Α του οποίου την αύξηση ελέγχω με την επιλογή «Αν β 18 τότε». Για το πλήθος των κοριτσιών με βαθμό άνω του 15 χρησιμοποιώ τον μετρητή ΜΚ του οποίου την αύξηση ελέγχω με την επιλογή «Αν φ= Κ ΚΑΙ β>15 τότε». 14