Γεώργιος Δ. Παλτεζανάκης

Σχετικά έγγραφα
1. Ακολουθία 2. Επιλογή 2.1. Απλή επιλογή

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

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

ΠΕΚ ΤΡΙΠΟΛΗΣ ΕΠΙΜΟΡΦΩΣΗ ΕΚΠ/ΚΩΝ ΠΕ19,20 ΗΜ/ΝΙΑ ΣΧΕΔΙΟ ΜΑΘΗΜΑΤΟΣ

Ασκή σεις στή δομή επανα λήψής

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

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

β. Ποια είναι η «τιμή φρουρός» στο παρακάτω τμήμα αλγορίθμου γραμμένο σε «ψευδογλώσσα»; Διάβασε όνομα Όσο όνομα < > ΤΕΛΟΣ επανάλαβε Εμφάνισε όνομα

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

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

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

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

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

Ασκήσεις στα υποπρογράμματα

ΘΕΜΑ 1 ο. Στήλη Β Προτάσεις. β. Ο βρόχος επανάληψης τερµατίζεται, όταν η συνθήκη είναι αληθής. όταν η συνθήκη είναι ψευδής.

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

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

Να το ξαναγράψετε χρησιμοποιώντας αντί για την εντολή Για Τέλος_επανάληψης: α. την εντολή Όσο Τέλος_επανάληψης

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

Παλλατίδειο ΓΕΛ Σιδηροκάστρου

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ. Εξετάσεις Προσομοίωσης 24/04/2019

Στο παραπάνω τμήμα υπάρχουν περιττοί έλεγχοι. Να γράψετε ξανά το παραπάνω τμήμα χωρίς τους περιττούς ελέγχους.

Γ ΤΑΞΗ ΕΞΕΤΑΖΟΜΕΝΟ ΜΑΘΗΜΑ: ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ÑÏÌÂÏÓ

Φύλλο εργασίας 4 ο Δομή επανάληψης Εισαγωγή στις Αρχές της Επιστήμης Η/Υ.

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

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

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

ΕΠΑΝΑΛΗΠΤΙΚΑ ΘΕΜΑΤΑ 2011

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ. Πως γίνεται ο ορισμός μιας διαδικασίας; Να δοθούν σχετικά παραδείγματα. ΑΡΧΗ Εντολές ΤΕΛΟΣ_ΔΙΑΔΙΚΑΣΙΑΣ

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

ΥΛΗ ΣΤΟ ΜΑΘΗΜΑ ΤΟΥ ΑΕΠΠ Γ ΛΥΚΕΙΟΥ ΚΑΙ ΠΑΡΑΤΗΡΗΣΕΙΣ!

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

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

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

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

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

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ομή Επανάληψης

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

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ Κεφάλαιο 2 ο Να περιγραφεί η δομή επανάληψης Αρχή_επανάληψης Μέχρις_ότου

Α2. Να αναφέρετε ονομαστικά τις βασικές λειτουργίες που εκτελεί ένας υπολογιστής (Μονάδες 3)

ΑΡΧΗ 1ΗΣ ΣΕΛΙΔΑΣ Δ ΕΣΠΕΡΙΝΩΝ

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

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

Άσκηση 1 (κλιμακωτή χρέωση) Ένα γραφείο ενοικίασης αυτοκινήτων εφαρμόζει την παρακάτω τιμολογιακή πολιτική: Πάγιο 30 ευρώ

10 Α2. 5 Α3. (ΟΧΙ = 20-4*2^2)) H (X>Ψ ΚΑΙ X > Ψ

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

ΑΡΧΗ 1ΗΣ ΣΕΛΙΔΑΣ Γ ΗΜΕΡΗΣΙΩΝ

στο μάθημα κατεύθυνσης Γ τάξης ενιαίου Λυκείου: Ανάπτυξη Εφαρμογών σε Προγραμματιστικό Περιβάλλον (χρονική διάρκεια: sec)

ΣΕΙΡΑ: ΗΜΕΡΟΜΗΝΙΑ: 05/03/2012 ΑΠΑΝΤΗΣΕΙΣ. ΘΕΜΑ Α Α1. Α2. 1. ΣΩΣΤΟ 1 στ 2. ΛΑΘΟΣ 2 δ 3. ΣΩΣΤΟ 3 ε 4. ΛΑΘΟΣ 4 β 5. ΣΩΣΤΟ 5 γ

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

10 Α2. 5 Α3. (ΟΧΙ = 20-4*2^2)) H (X>Ψ ΚΑΙ X > Ψ

ΑΡΧΗ 1ΗΣ ΣΕΛΙΔΑΣ Δ ΕΣΠΕΡΙΝΩΝ

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

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


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

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

Α2. Να γράψετε στο τετράδιο σας τον αριθμό 1-4 κάθε πρότασης και δίπλα το γράμμα που δίνει τη σωστή επιλογή.

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

ΑΡΧΗ 1ης ΣΕΛΙΔΑΣ. ii) Πόσες φορές θα εκτελεστεί η εντολή ΔΙΑΒΑΣΕ Α[μ,λ] στον αλγόριθμο της προηγούμενης ερώτησης; α) 35 β) 12 γ) 20

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ. Εξετάσεις Προσομοίωσης 10/04/2018

ΑΡΧΗ 1ΗΣ ΣΕΛΙΔΑΣ Γ ΗΜΕΡΗΣΙΩΝ

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

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

ΕΚΠΑΙΔΕΥΤΗΡΙΑ ΝΕΑ ΠΑΙΔΕΙΑ

ΑΡΧΗ 1ης ΣΕΛΙΔΑΣ. ii) Πόσες φορές θα εκτελεστεί η εντολή ΔΙΑΒΑΣΕ Α[μ,λ] στον αλγόριθμο της προηγούμενης ερώτησης; α) 35 β) 12 γ) 20

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

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

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

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

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

Στήλη Β Προτάσεις α. Ο βρόχος επανάληψης τερµατίζεται, όταν η συνθήκη είναι αληθής β. Ο βρόχος επανάληψης

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

ΑΡΧΗ 1ΗΣ ΣΕΛΙ ΑΣ Γ ΤΑΞΗ

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

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

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

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

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

ΑΡΧΗ 1ΗΣ ΣΕΛΙ ΑΣ Γ ΗΜΕΡΗΣΙΩΝ


ΑΡΧΗ 1ΗΣ ΣΕΛΙ ΑΣ Γ ΗΜΕΡΗΣΙΩΝ

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

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

ΦΡΟΝΤΙΣΤΗΡΙΟ ΦΑΣΜΑ 21/4/2013

Τρίτη, 1 Ιουνίου 2004 ΤΕΧΝΟΛΟΓΙΚΗ ΚΑΤΕΥΘΥΝΣΗ Γ ΛΥΚΕΙΟΥ ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ

Εισαγωγή στην πληροφορική

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

ΑΡΧΗ 1ΗΣ ΣΕΛΙ ΑΣ Γ ΗΜΕΡΗΣΙΩΝ

Αναφέρατε τις ιδιότητες που πρέπει να διακρίνουν τα υποπρογράμματα. Μονάδες 3

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

Λυμένες ασκήσεις με δομές επανάληψης και επιλογής. Εισαγωγή στην επιστήμη των Η/Υ της Β ΓενικούΛυκείου

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

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

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

ΚΕΦΑΛΑΙΟ 2 Παράδειγμα 3 Παράδειγμα 5 Παράδειγμα 6 ΔΤ3 ΔΤ4 151

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

ΑΡΧΗ 1ΗΣ ΣΕΛΙΔΑΣ Γ ΗΜΕΡΗΣΙΩΝ

ΑΡΧΗ 1ΗΣ ΣΕΛΙ ΑΣ Γ ΗΜΕΡΗΣΙΩΝ

Transcript:

Η ύλη του μαθήματος μας εισάγει στον δομημένο προγραμματισμό. Ένα καλό αυτής της τεχνικής είναι ότι αν ο μαθητής γνωρίζει κάποιους βασικούς αλγόριθμους μπορεί με συνδυασμό τους να οικοδομήσει άλλους πιο σύνθετους. Ας δούμε για παράδειγμα: Α) Αλγόριθμος που να υπολογίζει το άθροισμα Σ=1+2+3+ +ν Αλγόριθμος Άθροισμα_φυσικών Σ 0 Για Ι από 1 μέχρι ν Σ Σ+Ι Τέλος Άθροισμα_φυσικών Β) Αλγόριθμος που να υπολογίζει το Ν παραγοντικό (Ν!=1. 2. 3.. Ν) για Ν>0 Αλγόριθμος Ν_Παραγοντικό Π 1 Για J από 1 μέχρι ν Π Π*J Τέλος Ν_Παραγοντικό Ας προσπαθήσουμε τώρα να κατασκευάσουμε αλγόριθμο που να υπολογίζει το Σ=1!+2!+3!+ +ν!. Ο ποιο απλός τρόπος είναι να συνδυάσουμε τους δύο παραπάνω αλγόριθμους. Αλγόριθμος Αθροισμα_παραγοντικών_φυσικών_1 Σ 0 Για Ι από 1 μέχρι ν Π 1 Για J από 1 μέχρι Ι Π Π*J Σ Σ+Π Τέλος Αθροισμα_παραγοντικών_φυσικών_1 Αν δούμε τώρα τον πίνακα τιμών αυτού του αλγόριθμου για Ν=5 θα παρατηρήσουμε ότι επαναλαμβάνονται συνεχώς οι ίδιοι πολλαπλασιασμοί αφού πριν από κάθε εφαρμογή της εσωτερικής επανάληψης αρχικοποιείται το γινόμενο του παραγοντικού Π. Αν θέλουμε να το αποφύγουμε για να μην επιβαρύνουμε τον ΗΥ μπορούμε να κατασκευάσουμε έναν πιο «κομψό» αλγόριθμο ο οποίος έχει μία μόνο δομή επανάληψης. Φυσικά και οι δύο αλγόριθμοι είναι ισότιμοι βαθμολογικά. Σελίδα 1

I J Π Σ ΑΡΧΙΚΕΣ. ΤΙΜΕΣ 1 0 ΒΗΜΑ 1 1 1 1 1 ΒΗΜΑ 2 2 1 1 ΒΗΜΑ 3 2 2 3 ΒΗΜΑ 4 3 1 1 ΒΗΜΑ 5 2 2 ΒΗΜΑ 6 3 6 9 ΒΗΜΑ 7 4 1 1 ΒΗΜΑ 8 2 2 ΒΗΜΑ 9 3 6 ΒΗΜΑ 10 4 24 33 ΒΗΜΑ 11 5 1 1 ΒΗΜΑ 12 2 2 ΒΗΜΑ 13 3 6 ΒΗΜΑ 14 4 24 ΒΗΜΑ 15 5 120 153 Αλγόριθμος Αθροισμα_παραγοντικών_φυσικών_2 Σ 0 Π 1 Για Ι από 1 μέχρι ν Π Π*Ι Σ Σ+Π Τέλος Αθροισμα_παραγοντικών_φυσικών_2 Στον παρακάτω πίνακα φαίνεται πόσο πιο γρήγορος είναι ο δεύτερος αλγόριθμος. I Π Σ ΑΡΧΙΚΕΣ. ΤΙΜΕΣ 1 0 ΒΗΜΑ 1 1 1 1 ΒΗΜΑ 2 2 2 3 ΒΗΜΑ 3 3 6 9 ΒΗΜΑ 4 4 24 33 ΒΗΜΑ 5 5 120 153 Η μορφή του πρώτου αλγόριθμου όμως μας βοηθάει στην κατασκευή αλγόριθμου με χρήση «συνάρτησης» όπως θα δούμε. Μπορούμε να δούμε και ένα άλλο παράδειγμα «οικοδόμησης» αλγόριθμου όπου ένα απλό πρόβλημα γίνεται σταδιακά πιο σύνθετο με την εισαγωγή μιας επανάληψης. Α) Να κατασκευαστεί αλγόριθμος ο οποίος να δέχεται από το πληκτρολόγιο τον κωδικό ενός μαθητή, τους προφορικούς βαθμούς του Π1,Π2 και τον γραπτό Γ, Σελίδα 2

σε ένα μάθημα και να βρίσκει τα μόριά του, που βγαίνουν παίρνοντας το 30% του προφορικού και το 70% του γραπτού. αφού προηγουμένως γίνει προσαρμογή προφορικού στις 2 μονάδες. Αλγόριθμος Υπολογισμός_μορίων_1 Δεδομένα //κωδικός,π1,π2,γ// Αποτελέσματα //μόρια// Διάβασε Π1,Π2,Γ Π (Π1+Π2)/2 Αν Π-Γ>2 τότε Π Γ+2 Αλλιώς_αν Π-Γ<-2 τότε Π Γ-2 μόρια 0,3*Π+0,7*Γ Εμφάνισε μόρια Τέλος Υπολογισμός_μορίων_1 Σελίδα 3

Β) Ας υποθέσουμε τώρα ότι μας ζητάνε να λύσουμε το ίδιο πρόβλημα αλλά για Ν μαθητές. Το πλήθος Ν δίνεται από το πληκτρολόγιο. Αλγόριθμος Υπολογισμός_μορίων_2 Δεδομένα //πλήθος, κωδικός,π1,π2,γ// Αποτελέσματα //μόρια// Διάβασε πλήθος Για Ι από 1 μέχρι πλήθος Διάβασε Π1,Π2,Γ Π (Π1+Π2)/2 Αν Π-Γ>2 τότε Π Γ+2 Αλλιώς_αν Π-Γ<-2 τότε Π Γ-2 μόρια 0,3*Π+0,7*Γ Εμφάνισε μόρια Τέλος Υπολογισμός_μορίων_2 Γ) Αν τώρα έχουμε το ίδιο πρόβλημα αλλά για άγνωστο αριθμό μαθητών και ο αλγόριθμος θα σταματήσει όταν για κωδικός δοθεί το 000, θα πρέπει να χρησιμοποιήσουμε άλλη μορφή επανάληψης αφού δεν ξέρουμε από την αρχή πόσες φορές θα εκτελεστεί η επανάληψη. Θα προτιμήσουμε τη Όσο επανέλαβε για να καλύψουμε την ακραία περίπτωση, να θελήσουμε να σταματήσουμε αμέσως πριν περάσουμε τους βαθμούς κανενός μαθητή. Θα πρέπει λοιπόν η μεταβλητή «κωδικός» που εμφανίζεται στη συνθήκη που ελέγχει την επανάληψη να διαβάζεται χωριστά, την πρώτη φορά πριν την αρχή της επανάληψης και στη συνέχεια σαν τελευταία εντολή πριν το Σελίδα 4

Αλγόριθμος Υπολογισμός_μορίων_3 Δεδομένα //κωδικός,π1,π2,γ// Αποτελέσματα //μόρια// Όσο κωδικός<> 000 επανέλαβε Παρατηρήσεις Διάβασε Π1,Π2,Γ Π (Π1+Π2)/2 Αν Π-Γ>2 τότε Π Γ+2 Αλλιώς_αν Π-Γ<-2 τότε Π Γ-2 μόρια 0,3*Π+0,7*Γ Εμφάνισε μόρια Τέλος Υπολογισμός_μορίων_3 Μπορούμε να δούμε τώρα μερικές διαφορές στη χρήση των επαναλήψεων Όσο επανέλαβε και Επανέλαβε μέχρις_ότου. Στην «Όσο <συνθήκη> επανέλαβε» ο έλεγχος γίνεται στην αρχή και μπορεί να μην γίνει καθόλου η επανάληψη. Η επανάληψη συνεχίζεται ΟΣΟ η <συνθήκη> είναι αληθής. Στην «Αρχή_επανάληψης Μέχρις_ότου <συνθήκη>» ο έλεγχος γίνεται στο τέλος και η επανάληψη θα γίνει τουλάχιστον μια φορά. Η επανάληψη συνεχίζεται ΜΕΧΡΙ η <συνθήκη> να γίνει αληθινή, δηλαδή ΟΣΟ η <συνθήκη> είναι ψευδής. Ένα άλλο σημείο που πρέπει να προσέξουμε είναι η μεταβλητή που ελέγχει τη <συνθήκη>. Αυτή πρέπει οπωσδήποτε να μεταβάλλεται μέσα στο σώμα της δομής, ή με είσοδο από το πληκτρολόγιο ή με εκχώρηση (σε αντίθεση με τη δομή Για από μέχρι όπου αυτό απαγορεύεται). Αν έχουμε τη ΌΣΟ ΕΠΑΝΕΛΑΒΕ πρέπει η μεταβλητή να παίρνει αρχική τιμή πριν την επανάληψη. Τις παραπάνω διαφορές θα τις ξεκαθαρίσουμε με το παράδειγμα «Έλεγχος Δεδομένων» Σελίδα 5

Ας υποθέσουμε λοιπόν ότι θέλουμε να εισάγουμε βαθμούς μαθητών ελέγχοντας αν είναι στο διάστημα [0,20]. 1 η μορφή Επανέλαβε Εμφάνισε Δώσε το βαθμό (μεταξύ 0 & 20) Μέχρις_ότου (Βαθμός>=0) ΚΑΙ (βαθμός<=20) 2 η μορφή Επανέλαβε Εμφάνισε Δώσε το βαθμό (μεταξύ 0 & 20) Αν (Βαθμός<0) Η (Βαθμός>20) τότε Εμφάνισε Λάθος δεν είναι μεταξύ 0 & 20 ξαναδώσετε τον βαθμό Μέχρις_ότου (Βαθμός>=0) ΚΑΙ (βαθμός<=20) 3 η μορφή Εμφάνισε Δώσε το βαθμό (μεταξύ 0 & 20) Όσο (βαθμός<0) Ή (βαθμός>20) επανέλαβε Εμφάνισε Λάθος δεν είναι μεταξύ 0 & 20 ξαναδώσετε τον βαθμό Βλέπουμε ότι η δεύτερη μέθοδος μας δίνει την ευχέρεια να εμφανίσουμε και μήνυμα λάθους. Σελίδα 6

Ας δούμε ένα πρόβλημα που μας ζητάει να εφαρμόσουμε κάποια πράγματα που μάθαμε στη Στατιστική. Πρόβλημα: Θέλουμε να υπολογίσουμε τη συχνότητα εμφάνισης των διαφόρων βαθμών των μαθητών της Γ τάξης στο μάθημα ΑΕΠΠ. Να κατασκευάσετε αλγόριθμο που : 1. Να διαβάζει το πλήθος των μαθητών. 2. Να διαβάζει τους προφορικούς βαθμούς τους (θεωρούνται ακέραιοι), ελέγχοντας αν είναι στη κλίμακα [1,20]. 3. Να βρίσκει και να εμφανίζει πόσοι μαθητές έχουν 20 πόσοι 19 κλπ. Λύση: Εδώ θέλουμε στην ουσία να μετρήσουμε πόσα 20, 19, 18 κλπ υπάρχουν στη τάξη. Επειδή όμως οι βαθμοί είναι πολλοί μπορούμε αντί να χρησιμοποιήσουμε 20 μεταβλητές για αθροιστές να χρησιμοποιήσουμε έναν μονοδιάστατο πίνακα 20 θέσεων όπου το Α[1] στοιχείο να μετρά πόσοι μαθητές πήραν βαθμό ένα (1) το Α[2] πόσοι πήραν 2 κ.ο.κ.. Αλγόριθμος Συχνότητα_βαθμών Δεδομένα //Ν, Βαθμός// Αποτελέσματα //Α[20]// Διάβασε Ν Για Ι από 1 μέχρι 20 Α[Ι] 0 Για Ι από 1 μέχρι Ν Επανέλαβε Εμφάνισε Δώσε τον βαθμό (1-20) Διάβασε Βαθμό Μέχρις_ότου (Βαθμός>=1) ή (Βαθμός<=20) Α[Βαθμός] Α[Βαθμός]+1 Για Ι από 1 μέχρι 20 Εμφάνισε Α[Ι] Τέλος Συχνότητα_βαθμών Σελίδα 7