ΑΕΠΠ - Μάθημα 13

17
Ανάπτυξη Εφαρμογών σε Προγραμματιστικό Περιβάλλον 2.4.5 Δομή Επανάληψης Μετατροπές δομών επανάληψης Έλεγχος τιμών εισόδου Το έργο με τίτλο Σημειώσεις για το μάθημα ΑΕΠΠ της Γ Λυκείου από τον δημιουργό Αρβανιτάκη Γιάννη διατίθεται με την άδεια Creative Commons Αναφορά Δημιουργού - Μη Εμπορική Χρήση - Παρόμοια Διανομή 3.0 Ελλάδα . Βασισμένο σε έργο στο http://ioarvanit.mysch.gr. Παροχή δικαιωμάτων πέρα από τα πλαίσια αυτής της άδειας μπορεί να είναι διαθέσιμη στο http://ioarvanit.mysch.gr.

Transcript of ΑΕΠΠ - Μάθημα 13

Page 1: ΑΕΠΠ - Μάθημα 13

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

2.4.5 Δομή ΕπανάληψηςΜετατροπές δομών επανάληψης

Έλεγχος τιμών εισόδου

Το έργο με τίτλο Σημειώσεις για το μάθημα ΑΕΠΠ της Γ Λυκείου από τον δημιουργό Αρβανιτάκη Γιάννη διατίθεται με την άδεια Creative Commons Αναφορά Δημιουργού - Μη Εμπορική Χρήση - Παρόμοια Διανομή 3.0 Ελλάδα .

Βασισμένο σε έργο στο http://ioarvanit.mysch.gr.Παροχή δικαιωμάτων πέρα από τα πλαίσια αυτής της άδειας μπορεί να είναι διαθέσιμη στο http://ioarvanit.mysch.gr.

Page 2: ΑΕΠΠ - Μάθημα 13

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

Σημειώσεις για το μάθημα ΑΕΠΠ της Γ Λυκείου από τον δημιουργό Αρβανιτάκη Γιάννη διατίθεται με την άδεια Creative Commons Αναφορά Δημιουργού - Μη Εμπορική Χρήση - Παρόμοια Διανομή 3.0 Ελλάδα .

Page 3: ΑΕΠΠ - Μάθημα 13

Δίνεται το διπλανό τμήμα αλγορίθμου. Να ξαναγράψετε το παραπάνω τμήμα αλγορίθμου χρησιμοποιώντας την εντολή ΓΙΑ αντί τηςεντολής ΟΣΟ.

I ← 2Όσο Ι < 25 επανάλαβε Εμφάνισε Ι I ← Ι + 4Τέλος_επανάληψης

Σημειώσεις για το μάθημα ΑΕΠΠ της Γ Λυκείου από τον δημιουργό Αρβανιτάκη Γιάννη διατίθεται με την άδεια Creative Commons Αναφορά Δημιουργού - Μη Εμπορική Χρήση - Παρόμοια Διανομή 3.0 Ελλάδα .

Page 4: ΑΕΠΠ - Μάθημα 13

Δίνεται το διπλανό τμήμα αλγορίθμου. Να ξαναγράψετε το παραπάνω τμήμα αλγορίθμου χρησιμοποιώντας την εντολή ΓΙΑ αντί τηςεντολής ΟΣΟ.

I ← 2Όσο Ι < 25 επανάλαβε Εμφάνισε Ι I ← Ι + 4Τέλος_επανάληψης

Για να συντάξω την ΓΙΑ χρειάζομαι να ξέρω αρχική και τελική τιμή της Ι, καθώς και το βήμα. Από τον πάνω αλγόριθμο καταλαβαίνω τα εξής:

Σημειώσεις για το μάθημα ΑΕΠΠ της Γ Λυκείου από τον δημιουργό Αρβανιτάκη Γιάννη διατίθεται με την άδεια Creative Commons Αναφορά Δημιουργού - Μη Εμπορική Χρήση - Παρόμοια Διανομή 3.0 Ελλάδα .

Page 5: ΑΕΠΠ - Μάθημα 13

Δίνεται το διπλανό τμήμα αλγορίθμου. Να ξαναγράψετε το παραπάνω τμήμα αλγορίθμου χρησιμοποιώντας την εντολή ΓΙΑ αντί τηςεντολής ΟΣΟ.

I ← 2Όσο Ι < 25 επανάλαβε Εμφάνισε Ι I ← Ι + 4Τέλος_επανάληψης

Για να συντάξω την ΓΙΑ χρειάζομαι να ξέρω αρχική και τελική τιμή της Ι, καθώς και το βήμα. Από τον πάνω αλγόριθμο καταλαβαίνω τα εξής:

Η αρχική τιμή θα είναι το 2. (I ← 2)

Σημειώσεις για το μάθημα ΑΕΠΠ της Γ Λυκείου από τον δημιουργό Αρβανιτάκη Γιάννη διατίθεται με την άδεια Creative Commons Αναφορά Δημιουργού - Μη Εμπορική Χρήση - Παρόμοια Διανομή 3.0 Ελλάδα .

Page 6: ΑΕΠΠ - Μάθημα 13

Δίνεται το διπλανό τμήμα αλγορίθμου. Να ξαναγράψετε το παραπάνω τμήμα αλγορίθμου χρησιμοποιώντας την εντολή ΓΙΑ αντί τηςεντολής ΟΣΟ.

I ← 2Όσο Ι < 25 επανάλαβε Εμφάνισε Ι I ← Ι + 4Τέλος_επανάληψης

Για να συντάξω την ΓΙΑ χρειάζομαι να ξέρω αρχική και τελική τιμή της Ι, καθώς και το βήμα. Από τον πάνω αλγόριθμο καταλαβαίνω τα εξής:

Η αρχική τιμή θα είναι το 2. (I ← 2)

Το βήμα είναι 4 (I ← Ι + 4)

Σημειώσεις για το μάθημα ΑΕΠΠ της Γ Λυκείου από τον δημιουργό Αρβανιτάκη Γιάννη διατίθεται με την άδεια Creative Commons Αναφορά Δημιουργού - Μη Εμπορική Χρήση - Παρόμοια Διανομή 3.0 Ελλάδα .

Page 7: ΑΕΠΠ - Μάθημα 13

Δίνεται το διπλανό τμήμα αλγορίθμου. Να ξαναγράψετε το παραπάνω τμήμα αλγορίθμου χρησιμοποιώντας την εντολή ΓΙΑ αντί τηςεντολής ΟΣΟ.

I ← 2Όσο Ι < 25 επανάλαβε Εμφάνισε Ι I ← Ι + 4Τέλος_επανάληψης

Για να συντάξω την ΓΙΑ χρειάζομαι να ξέρω αρχική και τελική τιμή της Ι, καθώς και το βήμα. Από τον πάνω αλγόριθμο καταλαβαίνω τα εξής:

Η αρχική τιμή θα είναι το 2. (I ← 2)

Το βήμα είναι 4 (I ← Ι + 4)

Η τελική τιμή θα είναι μικρότερη του 25 (Όσο Ι < 25). Αφού αρχικά το Ι θα είναι 2 και τοβήμα 4 τότε το Ι θα παίρνει τις τιμές 2,6,10,14,18, 22, 26 και δεν πρέπει να ξεπεράσει το 25. Άρα η τελική τιμή θα είναι το 22

Σημειώσεις για το μάθημα ΑΕΠΠ της Γ Λυκείου από τον δημιουργό Αρβανιτάκη Γιάννη διατίθεται με την άδεια Creative Commons Αναφορά Δημιουργού - Μη Εμπορική Χρήση - Παρόμοια Διανομή 3.0 Ελλάδα .

Page 8: ΑΕΠΠ - Μάθημα 13

Δίνεται το διπλανό τμήμα αλγορίθμου. Να ξαναγράψετε το παραπάνω τμήμα αλγορίθμου χρησιμοποιώντας την εντολή ΓΙΑ αντί τηςεντολής ΟΣΟ.

I ← 2Όσο Ι < 25 επανάλαβε Εμφάνισε Ι I ← Ι + 4Τέλος_επανάληψης

Για να συντάξω την ΓΙΑ χρειάζομαι να ξέρω αρχική και τελική τιμή της Ι, καθώς και το βήμα. Από τον πάνω αλγόριθμο καταλαβαίνω τα εξής:

Η αρχική τιμή θα είναι το 2. (I ← 2)

Το βήμα είναι 4 (I ← Ι + 4)

Η τελική τιμή θα είναι μικρότερη του 25 (Όσο Ι < 25). Αφού αρχικά το Ι θα είναι 2 και τοβήμα 4 τότε το Ι θα παίρνει τις τιμές 2,6,10,14,18, 22, 26 και δεν πρέπει να ξεπεράσει το 25. Άρα η τελική τιμή θα είναι το 22

Για Ι από 2 μέχρι 22 με βήμα 4 Εμφάνισε ΙΤέλος_επανάληψης

Σημειώσεις για το μάθημα ΑΕΠΠ της Γ Λυκείου από τον δημιουργό Αρβανιτάκη Γιάννη διατίθεται με την άδεια Creative Commons Αναφορά Δημιουργού - Μη Εμπορική Χρήση - Παρόμοια Διανομή 3.0 Ελλάδα .

Page 9: ΑΕΠΠ - Μάθημα 13

Δίνεται το παρακάτω τμήμα αλγορίθμου. Να μετατραπεί σε ισοδύναμο με χρήση της δομής Όσο … Επανάλαβε και με την χρήση της δομής αρχή_επανάληψης… μέχρις_ότου.

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

Σημειώσεις για το μάθημα ΑΕΠΠ της Γ Λυκείου από τον δημιουργό Αρβανιτάκη Γιάννη διατίθεται με την άδεια Creative Commons Αναφορά Δημιουργού - Μη Εμπορική Χρήση - Παρόμοια Διανομή 3.0 Ελλάδα .

Page 10: ΑΕΠΠ - Μάθημα 13

Δίνεται το παρακάτω τμήμα αλγορίθμου. Να μετατραπεί σε ισοδύναμο με χρήση της δομής Όσο … Επανάλαβε και με την χρήση της δομής αρχή_επανάληψης… μέχρις_ότου.

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

S ← 0I ← 50Όσο Ι >= -50 επανέλαβε S ← S+I I ← I-2Τέλος_επανάληψης

S ← 0I ← 50Αρχή_επανάληψης S ← S+I I ← I-2Μέχρις_ότου Ι<-50

Σημειώσεις για το μάθημα ΑΕΠΠ της Γ Λυκείου από τον δημιουργό Αρβανιτάκη Γιάννη διατίθεται με την άδεια Creative Commons Αναφορά Δημιουργού - Μη Εμπορική Χρήση - Παρόμοια Διανομή 3.0 Ελλάδα .

Page 11: ΑΕΠΠ - Μάθημα 13

Δίνεται το παρακάτω τμήμα αλγορίθμου. Να μετατραπεί σε ισοδύναμο με χρήση της δομής Όσο … Επανάλαβε και με την χρήση της δομής αρχή_επανάληψης… μέχρις_ότου.

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

S ← 0I ← 50Όσο Ι >= -50 επανέλαβε S ← S+I I ← I-2Τέλος_επανάληψης

S ← 0I ← 50Αρχή_επανάληψης S ← S+I I ← I-2Μέχρις_ότου Ι<-50

Αρχική τιμή

Σημειώσεις για το μάθημα ΑΕΠΠ της Γ Λυκείου από τον δημιουργό Αρβανιτάκη Γιάννη διατίθεται με την άδεια Creative Commons Αναφορά Δημιουργού - Μη Εμπορική Χρήση - Παρόμοια Διανομή 3.0 Ελλάδα .

Page 12: ΑΕΠΠ - Μάθημα 13

Δίνεται το παρακάτω τμήμα αλγορίθμου. Να μετατραπεί σε ισοδύναμο με χρήση της δομής Όσο … Επανάλαβε και με την χρήση της δομής αρχή_επανάληψης… μέχρις_ότου.

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

S ← 0I ← 50Όσο Ι >= -50 επανέλαβε S ← S+I I ← I-2Τέλος_επανάληψης

S ← 0I ← 50Αρχή_επανάληψης S ← S+I I ← I-2Μέχρις_ότου Ι<-50

Αρχική τιμή

Τελική τιμή

Σημειώσεις για το μάθημα ΑΕΠΠ της Γ Λυκείου από τον δημιουργό Αρβανιτάκη Γιάννη διατίθεται με την άδεια Creative Commons Αναφορά Δημιουργού - Μη Εμπορική Χρήση - Παρόμοια Διανομή 3.0 Ελλάδα .

Page 13: ΑΕΠΠ - Μάθημα 13

Δίνεται το παρακάτω τμήμα αλγορίθμου. Να μετατραπεί σε ισοδύναμο με χρήση της δομής Όσο … Επανάλαβε και με την χρήση της δομής αρχή_επανάληψης… μέχρις_ότου.

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

S ← 0I ← 50Όσο Ι >= -50 επανέλαβε S ← S+I I ← I-2Τέλος_επανάληψης

S ← 0I ← 50Αρχή_επανάληψης S ← S+I I ← I-2Μέχρις_ότου Ι<-50

Αρχική τιμή

Τελική τιμή

Βήμα

Σημειώσεις για το μάθημα ΑΕΠΠ της Γ Λυκείου από τον δημιουργό Αρβανιτάκη Γιάννη διατίθεται με την άδεια Creative Commons Αναφορά Δημιουργού - Μη Εμπορική Χρήση - Παρόμοια Διανομή 3.0 Ελλάδα .

Page 14: ΑΕΠΠ - Μάθημα 13

Έλεγχος δεδομένων εισόδου

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

Για παράδειγμα αν διαβάζουμε βαθμούς μαθητών θα πρέπει να κάνουμε δεκτές τιμές που είναι μεταξύ του 0 και του 20.

Για να το πετύχουμε αυτό χρησιμοποιούμε την εξής τεχνική: Διαβάζουμε συνεχώς (επανάληψη) την τιμή εισόδου μέχρι (Μέχρις_ότου) να είναι σωστή.

Σημειώσεις για το μάθημα ΑΕΠΠ της Γ Λυκείου από τον δημιουργό Αρβανιτάκη Γιάννη διατίθεται με την άδεια Creative Commons Αναφορά Δημιουργού - Μη Εμπορική Χρήση - Παρόμοια Διανομή 3.0 Ελλάδα .

Page 15: ΑΕΠΠ - Μάθημα 13

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

Αλγόριθμος Έλεγχος_βαθμού Αρχή_επανάληψης Διάβασε βαθμός Μέχρις_ότου βαθμός>=0 και βαθμός<=20 Αν βαθμός>9,5 τότε Εμφάνισε “Περνάει” Αλλιώς Εμφάνισε “Κόβεται” Τέλος_αν Τέλος Έλεγχος_Βαθμού

Διαβάζω συνεχώς το βαθμό του μαθητή, μέχρι να είναι στα σωστά όρια.

Σημειώσεις για το μάθημα ΑΕΠΠ της Γ Λυκείου από τον δημιουργό Αρβανιτάκη Γιάννη διατίθεται με την άδεια Creative Commons Αναφορά Δημιουργού - Μη Εμπορική Χρήση - Παρόμοια Διανομή 3.0 Ελλάδα .

Page 16: ΑΕΠΠ - Μάθημα 13

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

Αλγόριθμος γινόμενο γιν ← 1 Για i από 1 μέχρι 100 Αρχή_επανάληψης Διάβασε α Μέχρις_ότου α<>0 γιν ← γιν*α Τέλος_επανάληψης Εμφάνισε γιν Τέλος γινόμενο

Διαβάζω συνεχώς το α μέχρι να είναι διάφορο του μηδέν

Σημειώσεις για το μάθημα ΑΕΠΠ της Γ Λυκείου από τον δημιουργό Αρβανιτάκη Γιάννη διατίθεται με την άδεια Creative Commons Αναφορά Δημιουργού - Μη Εμπορική Χρήση - Παρόμοια Διανομή 3.0 Ελλάδα .

Page 17: ΑΕΠΠ - Μάθημα 13

Να γίνει αλγόριθμος που θα διαβάζει το όνομα, την ηλικία και το φύλο (“Άνδρας”, “Γυναίκα”) 1000 ατόμων και ......

Αλγόριθμος στοιχεία Για i από 1 μέχρι 1000 Διάβασε Όνομα Αρχή_επανάληψης Διάβασε ηλικία Μέχρις_ότου ηλικία>0 Αρχή_επανάληψης Διάβασε φύλο Μέχρις_ότου φύλο = “Άνδρας” ή φύλο = “Γυναίκα” Τέλος_επανάληψης .......

Η ηλικία είναι θετικός αριθμός

Το φύλο έχει 2 τιμές

Σημειώσεις για το μάθημα ΑΕΠΠ της Γ Λυκείου από τον δημιουργό Αρβανιτάκη Γιάννη διατίθεται με την άδεια Creative Commons Αναφορά Δημιουργού - Μη Εμπορική Χρήση - Παρόμοια Διανομή 3.0 Ελλάδα .