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

Σχετικά έγγραφα
Προβλήματα, αλγόριθμοι, ψευδοκώδικας

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

Επαναληπτικές Διαδικασίες

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

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

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

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

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

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

ΔΙΑΓΩΝΙΣΜΑ: ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΤΑΞΗ:- Γ ΛΥΚΕΙΟΥ ΤΜΗΜΑΤΑ: ΓΟ4 ΓΟ7 (ΖΩΓΡΑΦΟΥ) ΓΟ5 ΓΟ6 (ΧΟΛΑΡΓΟΣ) HM/NIA: 15/1/2017

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

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

Πληροφορική 2. Αλγόριθμοι

Παρατηρήσεις για την δομή Όσο..επανάλαβε( ΣΟΣ)

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

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

I. ΑΛΓΟΡΙΘΜΟΣ II. ΠΡΑΞΕΙΣ - ΣΥΝΑΡΤΗΣΕΙΣ III. ΕΠΑΝΑΛΗΨΕΙΣ. 1. Τα πιο συνηθισμένα σενάρια παραβίασης αλγοριθμικών κριτηρίων είναι:

Κεφάλαια Εντολές επανάληψης. Τρεις εντολές επανάληψης. Επιλογή εντολής επανάληψης ΟΣΟ...ΕΠΑΝΑΛΑΒΕ. Σύνταξη στη ΓΛΩΣΣΑ

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

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

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

Προτεινόμενα Θέματα ΑΕΠΠ

A. Να γράψετε τον αριθμό της κάθε μιας από τις παρακάτω προτάσεις και δίπλα. το γράμμα Σ, εάν είναι σωστή, ή το γράμμα Λ, εάν είναι λανθασμένη.

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

Δομές Επανάληψης. Όσο μέχρις ότου για. 22/11/08 Ανάπτυξη εφαρμογών 1


ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ Ονοματεπώνυμο: Βαθμός:

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

Αλγόριθμοι και δομές δεδομένων

Θέμα Α Α3.1 ΤΕΛΟΣ 1ΗΣ ΑΠΟ 9 ΣΕΛΙΔΕΣ

Γκύζη 14-Αθήνα Τηλ :

Θέμα 1 ο. Επαναληπτικό ΛΥΣΕΙΣ

του προγράμματος diagrama_rohs.zip )

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

Ανάπτυξη Εφαρμογών σε Προγραμματιστικό Περιβάλλον 2o Επαναληπτικό Διαγώνισμα Κεφ: 2 ο 7 ο 8 ο ΗΜΕΡΟΜΗΝΙΑ 21/ 10/ 2017

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

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

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

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

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

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

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

Γενικές εξετάσεις 2014 Ανάπτυξη εφαρμογών σε προγραμματιστικό περιβάλλον Τεχνολογική Κατεύθυνση

μεταβλητής Χ Χ ΑΛΗΘΗΣ Χ Χ 7 > 4 Χ ΨΕΥ ΗΣ Μονάδες 10 ΑΡΧΗ 1ΗΣ ΣΕΛΙ ΑΣ - ΕΣΠΕΡΙΝΩΝ

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

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

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

ΑΠΟΛΥΤΗΡΙΕΣ ΕΞΕΤΑΣΕΙΣ Γ ΤΑΞΗΣ ΗΜΕΡΗΣΙΟΥ ΕΝΙΑΙΟΥ ΛΥΚΕΙΟΥ ΤΡΙΤΗ 3 ΙΟΥΝΙΟΥ ΑΕΠΠ

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

Θέματα ΑΕΠΠ Πανελλήνιες Εξετάσεις 2007

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

α. Να συμπληρώσετε τις επόμενες εντολές εκχώρησης, ώστε τα κενά κελιά του πίνακα να αποκτήσουν τις επιθυμητές τιμές.

ΜΑΘΗΜΑ / ΤΑΞΗ : ΑΕΠΠ / ΘΕΡΙΝΑ ΣΕΙΡΑ: 1 η ΗΜΕΡΟΜΗΝΙΑ: ΘΕΜΑ Α

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

Αναφορά (1/2) Μπορούμε να ορίσουμε μια άλλη, ισοδύναμη αλλά ίσως πιο σύντομη, ονομασία για ποσότητα (μεταβλητή, σταθερή, συνάρτηση, κλπ.

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

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

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

Να γράψετε τα αποτελέσματα αυτού του αλγόριθμου για Χ=13, Χ=9 και Χ=22. Και στις 3 περιπτώσεις το αποτέλεσμα του αλγορίθμου είναι 1

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

ΑΠΟΛΥΤΗΡΙΕΣ ΕΞΕΤΑΣΕΙΣ Δ ΤΑΞΗΣ ΕΣΠΕΡΙΝΟΥ ΓΕΝΙΚΟΥ ΛΥΚΕΙΟΥ ΠΑΡΑΣΚΕΥΗ 30 MAΪΟΥ ΑΕΠΠ

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

Μάριος Αγγελίδης

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

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

ΑΡΧΗ 1ΗΣ ΣΕΛΙΔΑΣ ΘΕΜΑ Α

ΜΑΘΗΜΑ / ΤΑΞΗ : ΑΕΠΠ/Γ ΟΙΚΟΝΟΜΙΚΩΝ & ΠΛΗΡΟΦΟΡΙΚΗΣ-ΘΕΡΙΝΑ ΗΜΕΡΟΜΗΝΙΑ: 12/11/2017 ΕΠΙΜΕΛΕΙΑ ΔΙΑΓΩΝΙΣΜΑΤΟΣ: ΚΑΤΡΑΚΗ Α.-ΣΙΟΤΡΟΠΟΣ Π.-ΛΙΟΔΑΚΗΣ Ε.

Συντάχθηκε απο τον/την Administrator Δευτέρα, 22 Φεβρουάριος :11 - Τελευταία Ενημέρωση Παρασκευή, 26 Φεβρουάριος :52

ΘΕΜΑ Συμβολική γλώσσα 2. Γλώσσες υψηλού επιπέδου 3. Γλώσσες τέταρτής γενιάς 4. Γλώσσα μηχανής

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

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

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

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΔΙΑΓΩΝΙΣΜΑ ΠΡΟΣΟΜΟΙΩΣΗΣ 23/04/2012. Α. Να απαντήσετε με Σ ή Λ στις παρακάτω προτάσεις:

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

i 1 Όσο i <> 100 επανάλαβε i i + 2 Γράψε A[i] Τέλος_επανάληψης

ΑΡΧΗ 1ης ΣΕΛΙΔΑΣ ΕΞΕΤΑΖΟΜΕΝΟ ΜΑΘΗΜΑ : ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΤΑΞΗ / ΤΜΗΜΑ : Γ ΛΥΚΕΙΟΥ ΔΙΑΓΩΝΙΣΜΑ ΠΕΡΙΟΔΟΥ : ΜΑΡΤΙΟΣ 2018 ΣΥΝΟΛΟ ΣΕΛΙΔΩΝ : 6 (ΕΞΙ)

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

μεταβλητής Χ Χ ΑΛΗΘΗΣ Χ Χ 7 > 4 Χ ΨΕΥ ΗΣ Μονάδες 10 EKΠΑΙΔΕΥΣΗ: Με Οράματα και Πράξεις για την Παιδεία -1-

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

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

ÔÏÕËÁ ÓÁÑÑÇ ÊÏÌÏÔÇÍÇ

ΜΑΘΗΜΑ / ΤΑΞΗ : ΑΕΠΠ / ΘΕΡΙΝΑ ΣΕΙΡΑ: 1 η ΗΜΕΡΟΜΗΝΙΑ: 02/11/2014 ΕΠΙΜΕΛΕΙΑ ΔΙΑΓΩΝΙΣΜΑΤΟΣ: Ι. ΜΙΧΑΛΕΑΚΟΣ - Π. ΣΙΟΤΡΟΠΟΣ- Α. ΚΑΤΡΑΚΗ

Α.1 Τι γνωρίζετε για τον διερμηνευτή, τον μεταγλωττιστή και ποιες οι διαφορές τους. 15 ΜΟΝΑΔΕΣ

Πρόβλημα 37 / σελίδα 207

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

ΤΕΛΟΣ 1ΗΣ ΑΠΟ 5 ΣΕΛΙΔΕΣ

ΘΕΜΑ Α. Λύση: 1. Σωστό, 2. Λάθος, 3. Σωστό, 4. Λάθος, 5. Λάθος. Ποια η διαφορά μεταξύ διερμηνευτή και μεταγλωττιστή; Απάντηση:

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

Εντολές ελέγχου ροής if, for, while, do-while

ΘΕΜΑΤΑ ΚΑΙ ΑΠΑΝΤΗΣΕΙΣ ΠΑΝΕΛΛΑΔΙΚΩΝ ΕΞΕΤΑΣΕΩΝ 2014

ΔΙΑΓΩΝΙΣΜΑ: ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΤΑΞΗ: Γ ΛΥΚΕΙΟΥ HM/NIA: 21/2/2016

Η ΔΟΜΗ ΕΠΑΝΑΛΗΨΗΣ Εντολές Επανάληψης REPEAT UNTIL, FOR, WHILE

3.1 Αριθμητικοί και Λογικοί Τελεστές, Μετατροπές Τύπου (Casting)

ΔΙΑΓΩΝΙΣΜΑ ΣΤΗΝ Α.Ε.Π.Π. Γ ΤΕΧΝΟΛΟΓΙΚΗΣ. Όνομα:.. Βαθμός: /100

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

ΔΙΑΓΩΝΙΣΜΑ 1ο Γ Τάξη Ενιαίου Λυκείου Σχολικό Έτος ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ

Τ και τιµή του Β θετική µετατρέπεται ισοδύναµα στην εντολή Όσο ως εξής:

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

Transcript:

Ψευδοκώδικας November 7, 2011 Οι γλώσσες τύπου ψευδοκώδικα είναι ένας τρόπος περιγραφής αλγορίθμων. Δεν υπάρχει κανένας τυπικός ορισμός της έννοιας του ψευδοκώδικα όμως είναι κοινός τόπος ότι οποιαδήποτε γλώσσα χρησιμοποιεί τις εντολές που ακολουθούν είναι αρκετά σαφής για να είναι μονοσήμαντη, χρησιμοποιεί απλές λειτουργίες κοινές σε όλους τους υπολογιστές και προφανής κατά τη μεταφορά της σε κάποια γλώσσα προγραμματισμού. Παρόλο που ο ψευδοκώδικας είναι `λογοτεχνία' με την έννοια ότι δεν μπορεί ως έχει να εκτελεστεί από έναν υπολογιστή, βοηθάει πολύ να θεωρήσουμε έναν εικονικό υπολογιστή ο οποίος `εκτελεί' τον ψευδοκώδικα. Ο εικονικός αυτός υπολογιστής θα ακολουθεί το μοντέλο που λίγο-πολύ ταιριάζει σε κάθε σύγχρονο υπολογιστή: Θα έχει μια κεντρική μονάδα επεξεργασίας η οποία θα μπορεί να εκτελεί αριθμητικές (πρόσθεση, διαίρεση κτλ.) και λογικές (π.χ. σύγκριση) πράξεις. Επίσης θα έχει και μία μνήμη η οποία θα αποτελείται απο αριθμημένες θέσεις στις οποίες οποίες η κεντρική μονάδα επεξεργασίας μπορεί να γράφει αριθμητικές τιμές όπως επίσης και να διαβάζει από αυτές. Επίσης οι εικονικός μας υπολογιστής θα μπορεί να εισάγει δεδομένα από τον έξω κόσμο, όπως επίσης και εξάγει τα αποτελέσματα των υπολογισμών του. Algorithm 1 Αρχή και τέλος 1: Αλγόριθμος Παράδειγμα 2: Διάφορες εντολές 3: Τέλος Παράδειγμα Κάθε αλγόριθμος που γράφουμε σε ψευδογλώσσα θα ξεκινάει με τη λέξη Αλγόριθμος και στη συνέχεια το όνομα του αλγορίθμου όπως στη γραμμή 1 του αλγορίθμου 1. Ακολουθούν οι διάφορες εντολές και στο τέλος γράφεται η λέξη Τέλος ακολουθούμενη πάλι από το όνομα του αλγορίθμου. 1

Algorithm 2 Ανάθεση τιμής σε μεταβλητή x 0 Η εντολή στον ψευδοκώδικα 2 δηλώνει ότι στη μεταβλητή x θα ανατεθεί η τιμή 0. Οι μεταβλητές στον ψευδοκώδικα όπως και στον προγραμματισμό υπολογιστών δεν έχουν την έννοια της ελεύθερης ποσότητας όπως στις μεταβλητές των μαθηματικών συναρτήσεων. Οι μεταβλητές εδώ λειτουργούν ως `αποθηκευτικός χώρος' στον οποίο ένας αλγόριθμος μπορεί να βάλει μια αριθμητική τιμή. Η τιμή τους αλλάζει μόνο αν κάτι τέτοιο δηλώνεται ρητά σε μία εντολή της μορφής x όπου δηλαδή το όνομά της εμφανίζεται αριστερά από το σύμβολο. Σε έναν εικονικό υπολογιστή η ανάθεση τιμής σε μια μεταβλητή είναι ισοδύναμη με την αποθήκευση της τιμής αυτής σε μία θέση μνήμης στην οποία έχει αντιστοιχιστεί μόνιμα το όνομα της μεταβλητής. Algorithm 3 Εισαγωγή τιμής 1: Διάβασε x 2: Τύπωσε x Προκειμένου να μπορέσουμε να χειριστούμε καταστάσεις στις οποίες ο `χρήστης' θα δίνει από κάποια μονάδα εισόδου την τιμή που θα αποθηκευτεί σε κάποια μεταβλητή θα χρησιμοποιούμε την εντολή Διάβασε όπως στην γραμμή 1 του ψευδοκώδικα 3. Με αυτήν την εντολή στον ψευδοκώδικα εννούμε ότι ζητείται από τον χειριστή του προγράμματος να δώσει μια τιμή η οποία και θα ανατεθεί στη μεταβλητή x. Αντίστοιχα, θα χρησιμοποιούμε την εντολή Τύπωσε όταν θέλουμε να δώσουμε ένα αποτέλεσμα ως έξοδο όπως στη γραμμή 2 του ίδιου κώδικα. Συνήθως ένα πρόγραμμα ξεκινάει με κάποια δεδομένα και περιμένουμε από αυτό την εκτύπωση κάποιου αποτελέσματος. Μπορούμε να αποφύγουμε τις τετριμμένες εντολές `Διάβασε' και `Τύπωσε' που απαιτούνται δηλώνοντας όλες τις σχετικές ποσότητες αντίστοιχα σε δύο γραμμές που αρχίζουν με τις λέξεις Δεδομένα και Αποτελέσματα και ακολουθούνται από τα ονόματα των σχετικών ποσοτήτων ανάμεσα σε διπλές καθέτους //. Ο ψευδοκώδικας 5 πολλαπλασιάζει την τιμή της μεταβλητής y με το 32, διαιρεί το αποτέλεσμα με τον αριθμό 7 και σε αυτό προσθέτει τημ τιμή της μεταβλητής z. Στο συγκεκριμένο παράδειγμα το τελικό αποτέλεσμα ανατίθεται στη μεταβλητή x αν και αυτό δεν είναι απαραίτητο. Ο υπολογισμός της παράστασης δεξιά από το θα εκτελεστεί άσχετα από το τι θα συμβεί με το αποτέλεσμά του. 2

Algorithm 4 Δεδομένα και Αποτελέσματα 1: Δεδομένα // PinakasBathmon // 2: Διάφορες εντολές 3: Πολλές εντολές 4: Αποτελέσματα // MesosOros // Algorithm 5 Υπολογισμός εκφράσεων με μεταβλητές x z + (32 y)/7 Σε εκφράσεις τέτοιου τύπου μπορούν να χρησιμοποιηθούν οι γνωστοί τελεστές των μαθηματικών (+,, κτλ.) αλλά και άλλοι όπως ο τελεστής υπολοίπου ακέραιας διαίρεσης mod αρκεί να μην υπάρχει ασάφεια και η πράξη να είναι εκτελέσιμη σε υπολογιστή. Σε έναν εικονικό υπολογιστή η όλη διαδικασία θα ήταν ισοδύναμη με την ανάκληση τιμών από τις αντίστοιχες θέσεις μνήμης στην κεντρική μονάδα επεξεργασίας και την πραγματοποίηση των αντίστοιχων πράξεων. Algorithm 6 Εκτέλεση υπό συνθήκη (πρώτη μορφή) 1: Αν x > y τότε 2: x x 1 3: πιθανώς περισσότερος ψευδοκώδικας 4: Τέλος_αν 5:... 6: Αν x > y τότε x x 1 Κατά την εκτέλεση του ψευδοκώδικα 6 ελέγχεται η αν είναι αληθής η λογική συνθήκη x > y. Αν είναι, τότε εκτελούνται οι εντολές των γραμμών 2 και 3 και στη συνέχεια οι εντολές από τη γραμμή 5 και μετά. Αν η συνθήκη x > y δεν αληθεύει τότε οι εντολές των γραμμών 2 και 3 δεν εκτελούνται και η εκτέλεση συνεχίζει από τη γραμμή 5 και έπειτα. Η λέξη Τέλος_αν σηματοδοτεί το τέλος των εντολών που εκτελούνται στην περίπτωση που αληθεύει η συνθήκη. Οι εντολές που μεσολαβούν από το Αν μέχρι το Τέλος_αν ονομάζονται σώμα (body) του Αν. Μπορεί να χρησιμοποιηθεί και μια ακόμα πιο συνοπτική μορφή της Αν όπως στη γραμμή 6. Σε αυτήν την περίπτωση αν ισχύει η συνθήκη, εκτελείται η μία και μόνη εντολή που βρίσκεται αμέσως μετά το τότε γραμμένη στην ίδια γραμμή και έτσι παραλείπεται το Τέλος_αν. Η δεύτερη μορφή της εντολής Αν στον ψευδοκώδικα 7 λειτουργεί ως εξής: στην 3

περίπτωση που η συνθήκη του Αν είναι αληθής, εκτελούνται οι γραμμές από το Αν μέχρι το αλλιώς. Στην αντίθετη περίπτωση εκτελούνται οι γραμμές από το αλλιώς μέχρι το Τέλος_αν. Και στις δύο περιπτώσεις η εκτέλεση συνεχίζεται από τη γραμμή αμέσως μετά το Τέλος_αν. Algorithm 7 Εκτέλεση υπό συνθήκη (δεύτερη μορφή) 1: Αν x > y τότε 2: x x 1 3: αλλιώς 4: y y 1 5: Τέλος_αν 6:... Algorithm 8 Εκτέλεση υπό συνθήκη (τρίτη μορφή) 1: Αν συνθήκη 1 τότε 2: x x 1 3: αλλιώς Αν συνθήκη 2 τότε 4: x x + 1 5: αλλιώς Αν... τότε 6:... 7: αλλιώς 8: y y 1 9: Τέλος_αν 10:... Στην τρίτη και τελευταία μορφή της Αν ελέγχεται αν αληθεύει η συνθήκη του Αν (συνθήκη 1). Αν ναι, τότε εκτελούνται οι εντολές από το Αν μέχρι το επόμενο αλλιώς_αν. Αλλιώς, ελέγχεται η συνθήκη μετά το πρώτο αλλιώς_αν (συνθήκη 2). Αν είναι αληθής τότε εκτελούνται οι εντολές από το αλλιώς_αν μέχρι το επόμενο αλλιώς_αν κοκ. Η διαδικασία αυτή συνεχίζεται μέχρι η εκτέλεση να φτάσει στο Τέλος_αν ή στο αλλιώς (αν αυτό υπάρχει). Η δομή που παρουσιάζεται στον αλγόριθμο 9 είναι μια δομή επανάληψης. Είναι σύνηθες σε έναν αλγόριθμο κάποια βήματα να πρέπει να επαναληφθούν αρκετές φορές με κάποιες μικρές ίσως παραλλαγές. Όταν είναι γνωστός εκ των προτέρων ο αριθμός των επαναλήψεων που θα πραγματοποιηθούν χρησιμοποιείται η παραπάνω δομή επανάληψης. Οι εντολές που βρίσκονται από τη Για μέχρι την Τέλος_επανάληψης επαναλαμβάνονται όσες φορές καθορίζεται από το i = 0 to 10, 4

Algorithm 9 Επανάληψη Για... από... μέχρι 1: Για i από 0 μέχρι 10 2: εντολή1 3:... 4: Τέλος_επανάληψης δηλαδή μία φορά για i ίσο με 0, μία φορά για i ίσο με 1, κοκ. μέχρι το i να πάρει την τιμή 10 οπότε πραγματοποιείται η τελευταία επανάληψη. Η μεταβλητή i λέγεται μεταβλητή ελέγχου (control variable). Στο συγκεκριμένο παράδειγμα η μεταβλητή ελέγχου παίρνει όλες τις ακέραιες τιμές από την αρχική (0) μέχρι την τελική (10). Είναι δυνατό να ορίσουμε ένα διαφορετικό βήμα για να δηλώσουμε ότι η μεταβλητή ελέγχου δε θα αυξάνεται κατά 1 σε κάθε επανάληψη. Π.χ. μία Για της μορφής Για i από 0 μέχρι 10 με βήμα 2 θα έδινε στη μεταβλητή i τις τιμές 0, 2, 4,..., 10 ενώ η for i = 12 to 0 step 3 τις τιμές 12, 9, 6, 3, 0. Τέτοιου είδους επαναλαμβανόμενα σχήματα ονόμαζόνται βρόχοι (loops). Algorithm 10 Επανάληψη Όσο... επανάλαβε 1: Όσο λογική συνθήκη επανάλαβε 2: εντολή1 3:... 4: Τέλος_επανάληψης 5:... Σε κάποιες περιπτώσεις δεν είναι εφικτό να ξέρουμε εκ των προτέρων πόσες επαναλήψεις θα πραγματοποιηθούν αλλά μπορεί να θέλουμε οι επαναλήψεις να πραγματοποιούνται αν και μόνο αν ισχύει μία συνθήκη. Σε αυτές τις περιπτώσεις χρησιμοποιούμε μια δομή επανάληψης `Όσο... επανάλαβε' όπως στον ψευδοκώδικα 10. Εκεί, ένας εικονικός υπολογιστής όταν θα έφτανε στη γραμμή 1, θα υπολόγιζε την τιμή της λογικής συνθήκης. Αν αυτή ίσχυε, θα προχωρούσε στην εκτέλεση των εντολών στο σώμα του Όσο και μετά θα επέστρεφε στη γραμμή 1 για να ξαναϋπολογίσει τη λογική συνθήκη. Η διαδικασία επαναλαμβάνεται μέχρι η λογική συνθήκη να αποτιμηθεί ως ψευδής. Σε αυτήν την περίπτωση η εκτέλεση συνεχίζει από την εντολή αμέσως μετά το σώμα του Όσο στη γραμμή 5. Το παραπάνω σχήμα λέγεται και βρόχοςwhile (while-loop). Καλό είναι να προσέξει κανείς ότι είναι πιθανό το σώμα ενός τέτοιου βρόχου να μην εκτελεστεί καθόλου. Αυτό συμβαίνει αν την πρώτη φορά που υπολογιστεί η λογική συνθήκη, αποτιμηθεί ως ψευδής. Επίσης είναι 5

πιθανό ο βρόχος να μην τερματιστεί ποτέ (ατέρμων βρόχος). Φυσικά αυτό δεν είναι επιθυμητό καθώς όπως έχουμε ήδη αναφέρει βασικό χαρακτηριστικό των αλγορίθμων είναι ότι πρέπει να τερματίζουν¹. Μια παραλλαγή του βρόχου-while είναι ο βρόχος επανάληψη-μέχρις_ότου στον οποίο η λογική συνθήκη εκτιμάται μετά την εκτέλεση του σώματος. Εδώ, Algorithm 11 Επανάληψη μέχρις_ότου 1: Αρχή_επανάληψης 2: εντολή1 3:... 4: Μέχρις_ότου λογική συνθήκη 5:... εκτελούνται κανονικά οι εντολές του σώματος του βρόχου (από τη γραμμή 2 μέχρι το Μέχρις_ότου και μετά εκτιμάται η λογική συνθήκη. Αν είναι αληθής τότε ξαναεκτελούνται οι εντολές του σώματος κοκ. Αν είναι ψευδής, η εκτέλεση συνεχίζεται από την εντολή αμέσως μετά το Μέχρις_ότου (γραμμή 5). ¹Παρόλα αυτά θα δούμε ότι φαινομενικά ατέρμονες βρόχοι χρησιμοποιούνται στον προγραμματισμό αλλά σε συνδυασμό με εντολές που μπορούν να σπάνε το βρόχο 6