Η παρουσίαση φορτώνεται. Παρακαλείστε να περιμένετε

Η παρουσίαση φορτώνεται. Παρακαλείστε να περιμένετε

Δομή επιλογής Πολλές φορές για να λυθεί ένα πρόβλημα πρέπει να ελεγχθεί αν ισχύει κάποια συνθήκη Παράδειγμα 2: Να διαβαστεί ένας αριθμός και να επιστραφεί.

Παρόμοιες παρουσιάσεις


Παρουσίαση με θέμα: "Δομή επιλογής Πολλές φορές για να λυθεί ένα πρόβλημα πρέπει να ελεγχθεί αν ισχύει κάποια συνθήκη Παράδειγμα 2: Να διαβαστεί ένας αριθμός και να επιστραφεί."— Μεταγράφημα παρουσίασης:

1 Δομή επιλογής Πολλές φορές για να λυθεί ένα πρόβλημα πρέπει να ελεγχθεί αν ισχύει κάποια συνθήκη Παράδειγμα 2: Να διαβαστεί ένας αριθμός και να επιστραφεί η απόλυτη τιμή του Ο εισαγόμενος αριθμός ελέγχεται αν είναι θετικός ή αρνητικός. Στην πρώτη περίπτωση δεν χρειάζεται να γίνει καμιά ενέργεια, ενώ στη δεύτερη πρέπει να πολλαπλασιαστεί ο αριθμός με το –1 ώστε να γίνει θετικός Αλγόριθμος Παράδειγμα_2    Διάβασε αριθμός    Αν αριθμός < 0 τότε       αριθμός ← αριθμός * (-1)               Τέλος_Αν    Εκτύπωσε αριθμός Τέλος Παράδειγμα_2

2 Δομή επιλογής Σχολιασμός ψευδοκώδικα:
Η εντολή αριθμός ← αριθμός * (-1), δεν είναι μαθηματική έκφραση αλλά εντολή εκχώρησης. Επιτρέπεται λοιπόν, η παρουσία της ίδιας μεταβλητής αριστερά και δεξιά του ←. Έτσι, πολλαπλασιάζεται το περιεχόμενο της μεταβλητής αριθμός με το –1 και το αποτέλεσμα καταχωρείται εκ νέου στη μεταβλητή αριθμός Η γενική σύνταξη της δομής επιλογής είναι: Αν συνθήκη τότε       Εντολή1       …       ΕντολήN Τέλος_αν

3 Δομή Σύνθετης επιλογής
Η δομή σύνθετης επιλογής χρησιμοποιείται στην περίπτωση που επιθυμούμε να εκτελέσουμε εναλλακτικά δυο ομάδες εντολών. Κριτήριο για το ποιο σετ εντολών θα εκτελεστεί αποτελεί κάποια συνθήκη. Στην περίπτωση που η συνθήκη ισχύει θα εκτελεστεί η πρώτη ομάδα εντολών διαφορετικά θα εκτελεστεί η δεύτερη Παράδειγμα 4: Να διαβαστούν δύο αριθμοί και να εκτυπωθεί ο μεγαλύτερος από τους δυο Αλγόριθμος Παράδειγμα_4    Διάβασε αριθμός1, αριθμός2    Αν αριθμός1 < αριθμός2 τότε                αριθμός ← αριθμός2    Αλλιώς         αριθμός ← αριθμός1    Τέλος_Αν    Εκτύπωσε αριθμός Τέλος Παράδειγμα_4

4 Δομή Σύνθετης επιλογής
Παράδειγμα 5: Να διαβαστεί αριθμός και να εκτυπωθεί αντίστοιχο μήνυμα για το αν είναι άρτιος ή περιττός Αλγόριθμος Παράδειγμα_5                 Διάβασε αριθμός    Αν αριθμός mod 2 = 0 τότε        Εκτύπωσε "Άρτιος"    Αλλιώς        Εκτύπωσε "Περιττός"    Τέλος_Αν Τέλος Παράδειγμα_5

5 Δομή πολλαπλής επιλογής
Κάποια προβλήματα απαιτούν την επιλογή μεταξύ περισσοτέρων από δυο περιπτώσεων Παράδειγμα 6: Να διαβαστεί ο μέσος όρος ενός μαθητή και να εκτυπωθεί χαρακτηρισμός του Αλγόριθμος Παράδειγμα_6    Διάβασε βαθμός Αν βαθμός < 9,5 τότε         Εκτύπωσε "Απορρίπτεται"    Αλλιώς_Αν βαθμός < 16 τότε         Εκτύπωσε "Καλώς"    Αλλιώς_Αν βαθμός < 18 τότε         Εκτύπωσε "Λίαν καλώς"    Αλλιώς_Αν βαθμός < 20 τότε         Εκτύπωσε "Άριστα"    Αλλιώς         Εκτύπωσε "Λάθος δεδομένο"    Τέλος_Αν Τέλος Παράδειγμα_6

6 Δομή πολλαπλής επιλογής
Σχολιασμός: Μια από τις περιπτώσεις της δομής επιλογής εκτελούνται σε κάθε περίπτωση Τα σύμβολα ' και " χρησιμοποιούνται ισοδύναμα Στις περιπτώσεις που θα ελεγχθούν περιλαμβάνουμε και αυτήν την λανθασμένη εισαγωγής δεδομένων Τα παραπάνω θα μπορούσαν να υλοποιηθούν και με πολλές δομές σύνθετης επιλογής

7 Εμφωλευμένες Δομές Στην υλοποίηση ενός αλγορίθμου μπορούμε να χρησιμοποιούμε κάποιες από τις παραπάνω δομές ως τμήμα εντολών σε άλλες Παράδειγμα 7: Να διαβαστούν τα έτη υπηρεσίας και ο μισθός ενός υπαλλήλου και να εκτυπωθεί το μπόνους σύμφωνα με τον πίνακα

8 Εμφωλευμένες Δομές Έτη υπηρεσίας Μισθός Μπόνους < 10 > 10
> 10 < 10 % > 12 %

9 Εμφωλευμένες Δομές Αλγόριθμος Παράδειγμα_7    Διάβασε έτη_υπηρεσίας, μισθός    Αν έτη_υπηρεσίας < 10 τότε        μπόνους ←  0    Αλλιώς        Αν μισθός < τότε               μπόνους ←  0,1 * μισθός            Αλλιώς               μπόνους ←   0,12 * μισθός                     Τέλος_Αν    Τέλος_Αν    Εκτύπωσε μπόνους Τέλος Παράδειγμα_7

10 ΛΥΜΕΝΕΣ ΑΣΚΗΣΕΙΣ ΣΤΗΝ ΑΠΛΗ ΚΑΙ ΣΥΝΘΕΤΗ ΔΟΜΗ ΕΠΙΛΟΓΗΣ
1. Χρησιμοποιώντας την απλή ή την σύνθετη δομή επιλογής να γραφούν οι κατάλληλες εντολές ώστε: Α. να εμφανίζει τον βαθμό ενός μαθητή εάν είναι κάτω από 9.5 Β. να εμφανίζει το ύψος ενός ατόμου εάν αυτό είναι από 1,70 έως και 18,5 Γ. να εμφανίζει το μήνυμα «ΟΚ» εάν η απάντηση ενός χρήστη είναι «ΝΑΙ» ή «ναι» . Δ. να εμφανίζει το μήνυμα «ΤΕΛΟΣ» εάν ο χρήστης επιλέξει τον αριθμό 1 ή 2, ή το μήνυμα «λάθος επιλογή» για οποιαδήποτε άλλη επιλογή. Η. να εμφανίζει το μήνυμα «ΟΚ» εάν η θερμοκρασία είναι από 25 έως 35 βαθμούς κελσίου, αλλά να μην είναι 30 διαφορετικά το μήνυμα "Πρόβλημα"

11 Λύση Α. Αν βαθμός <= 9.5 τότε Εμφάνισε βαθμός Β. Αν ύψος >=1.7 ΚΑΙ ύψος < 18,5 τότε Εμφάνισε ύψος Γ. Αν απάντηση = "ΝΑΙ" Ή απάντηση = "ναι" τότε Εμφάνισε "ΟΚ" Δ. Αν επιλογή = 1 Η επιλογή=2 τότε          Εμφάνισε "ΤΕΛΟΣ"      Αλλιώς          Εμφάνισε "Λάθος επιλογή"     Τέλος_αν Ε. Αν Θ >= 25 ΚΑΙ Θ <= 35 ΚΑΙ Θ <> 30 τότε          Εμφάνισε "ΟΚ"      Αλλιώς          Εμφάνισε "Πρόβλημα"      Τέλος_αν

12 ΛΥΜΕΝΕΣ ΑΣΚΗΣΕΙΣ ΣΤΗΝ ΑΠΛΗ ΚΑΙ ΣΥΝΘΕΤΗ ΔΟΜΗ ΕΠΙΛΟΓΗΣ
2. Να γραφεί αλγόριθμος που θα διαβάζει έναν αριθμό και να τον εμφανίζει. Αν ο αριθμός είναι θετικός να εμφανίζει το μήνυμα "Θετικός". Λύση Θα διαβάσουμε ένα αριθμό και θα τον εμφανίσουμε. Με την απλή επιλογή θα τον εξετάσουμε αν είναι θετικός και αν είναι θα εμφανίσουμε το μήνυμα. Αλγόριθμος Ελεγχος_αριθμού Διάβασε Χ Εμφάνισε Χ Αν Χ > 0 τότε Εμφάνισε "O αριθμός που έδωσες είναι θετικός" Τέλος Ελεγχος_αριθμού

13 ΛΥΜΕΝΕΣ ΑΣΚΗΣΕΙΣ ΣΤΗΝ ΑΠΛΗ ΚΑΙ ΣΥΝΘΕΤΗ ΔΟΜΗ ΕΠΙΛΟΓΗΣ
3. Να γραφεί αλγόριθμος που θα διαβάζει ένα αριθμό. Εάν ο αριθμός είναι ακέραιος τότε να εμφανίζει το μήνυμα «ακέραιος αριθμός» σε διαφορετική περίπτωση να εμφανίζει το μήνυμα «πραγματικός αριθμός». Λύση Αλγόριθμος Ελεγχος_αριθμου Διάβασε Χ Υ ← Α_Μ(Χ) Αν Χ=Υ τότε      Εμφάνισε "Ακέραιος" Αλλιώς      Εμφάνισε "Πραγματικός" Τέλος_αν Τέλος Ελεγχος_αριθμού

14 ΛΥΜΕΝΕΣ ΑΣΚΗΣΕΙΣ ΣΤΗΝ ΑΠΛΗ ΚΑΙ ΣΥΝΘΕΤΗ ΔΟΜΗ ΕΠΙΛΟΓΗΣ
4. Η καταγραφή της παράβασης ενός οχήματος που ξεπέρασε το όριο ταχύτητας σε ένα συγκεκριμένο δρόμο, γίνεται από το κατάλληλο καταγραφικό μηχάνημα της τροχαίας ως εξής: ο χειριστής του μηχανήματος καταχωρεί σε αυτό ένα αριθμό που αποτελεί το όριο ταχύτητας στο συγκεκριμένο δρόμο και το μηχάνημα καταγράφει την ταχύτητα του διερχομένου οχήματος. Αν η ταχύτητα του οχήματος είναι 25% μεγαλύτερη από το όριο ταχύτητας του δρόμου, τότε δίνει εντολή για να καταγραφεί το αυτοκίνητο. Να γραφεί αλγόριθμος που: α) Θα διαβάζει το όριο ταχύτητας και την ταχύτητα του οχήματος. β) Να εμφανίζει την ταχύτητα του αυτοκινήτου και το μήνυμα αν πρέπει να καταγραφεί το συγκεκριμένο όχημα.

15 Λύση Και εδώ θα χρησιμοποιηθεί η απλή δομή επιλογή καθώς μας ενδιαφέρει μόνο η περίπτωση που η ταχύτητα να είναι μεγαλύτερη από το όριο: Αλγόριθμος Ελεγχος_ταχύτητας Διάβασε όριο, ταχύτητα Εμφάνισε ταχύτητα ! δημιουργία νέου ορίου που προκύπτει από την αύξηση του αρχικού κατά 25% νεο_όριο ← όριο + 25 / 100 * όριο Αν ταχύτητα >= νέο_όριο τότε Εμφάνισε "Nα καταγραφεί το αυτοκίνητο" Τέλος Ελεγχος_ταχύτητας

16 ΛΥΜΕΝΕΣ ΑΣΚΗΣΕΙΣ ΣΤΗΝ ΑΠΛΗ ΚΑΙ ΣΥΝΘΕΤΗ ΔΟΜΗ ΕΠΙΛΟΓΗΣ
5. Να γραφεί αλγόριθμος ο οποίος να διαβάζει έναν θετικό αριθμό και να ελέγχει αν ο αριθμός αυτός είναι άρτιος ή περιττός εμφανίζοντας το κατάλληλο μήνυμα σε κάθε περίπτωση.

17 Λύση Επειδή μας ενδιαφέρουν δυο περιπτώσεις (αν ο αριθμός είναι άρτιος ή περιττός) θα χρησιμοποιηθεί η σύνθετη δομή επιλογής «Αν..τότε..αλλιώς». Η συνθήκη που καθορίζει ένας αριθμός Χ εάν είναι άρτιος είναι Χmod2=0. Εάν ισχύει η συνθήκη τότε ο αριθμός είναι άρτιος και πρέπει να εμφανιστεί το κατάλληλο μήνυμα, εάν δεν ισχύει τότε θα είναι περιττός εμφανίζοντας αντίστοιχο μήνυμα.

18 ΛΥΜΕΝΕΣ ΑΣΚΗΣΕΙΣ ΣΤΗΝ ΑΠΛΗ ΚΑΙ ΣΥΝΘΕΤΗ ΔΟΜΗ ΕΠΙΛΟΓΗΣ
Αλγόριθμος Eλεγχος_αριθμού Διάβασε Χ ! ένας αριθμός που διαιρείται με το 2 και δίνει υπόλοιπο μηδέν είναι άρτιος Αν Χ mod2=0 τότε      Εμφάνισε "O αριθμός που έδωσε είναι άρτιος" Αλλιώς      Εμφάνισε "O αριθμός που έδωσε είναι περιττός" Τέλος_αν Τέλος Έλεγχος_αριθμού

19 ΛΥΜΕΝΕΣ ΑΣΚΗΣΕΙΣ ΣΤΗΝ ΑΠΛΗ ΚΑΙ ΣΥΝΘΕΤΗ ΔΟΜΗ ΕΠΙΛΟΓΗΣ
6. Να γραφεί αλγόριθμος ο οποίος να διαβάζει έναν θετικό αριθμό και να ελέγχει αν ο αριθμός αυτός είναι διψήφιος ή όχι εμφανίζοντας το κατάλληλο μήνυμα σε κάθε περίπτωση. Λύση Επειδή μας ενδιαφέρουν δυο περιπτώσεις (αν ο αριθμός είναι διψήφιος ή όχι) θα χρησιμοποιηθεί η σύνθετη δομή επιλογής «Αν..τότε..αλλιώς». Η συνθήκη που καθορίζει ένας αριθμός Χ εάν είναι διψήφιος είναι Χ>=10 ΚΑΙ Χ<=99. Εάν ισχύει η συνθήκη τότε ο αριθμός είναι διψήφιος και πρέπει να εμφανιστεί το κατάλληλο μήνυμα.

20 Λύση Αλγόριθμος Eλεγχος_αριθμού Διάβασε Χ ! ένας αριθμός που είναι από 10 έως και 99 είναι διψήφιος Αν Χ>=10 ΚΑΙ Χ<=99 τότε      Εμφάνισε "O αριθμός που έδωσε είναι διψήφιος" Αλλιώς      Εμφάνισε "O αριθμός που έδωσε δεν είναι διψήφιος" Τέλος_αν Τέλος Έλεγχος_αριθμού


Κατέβασμα ppt "Δομή επιλογής Πολλές φορές για να λυθεί ένα πρόβλημα πρέπει να ελεγχθεί αν ισχύει κάποια συνθήκη Παράδειγμα 2: Να διαβαστεί ένας αριθμός και να επιστραφεί."

Παρόμοιες παρουσιάσεις


Διαφημίσεις Google