1 / 39

Παραδείγματα αλγορίθμων : για την παρασκευή ενός κέικ για τον υπολογισμό του Μ.Ο. του τετραμήνου

Κεφάλαιο 2 : Βασικές Έννοιες Αλγορίθμων 2.1 Τι είναι αλγόριθμος. Αλγόριθμος είναι ένα πεπερασμένο σύνολο εντολών αυστηρά καθορισμένων και εκτελέσιμων σε πεπερασμένο χρόνο, οι οποίες αν ακολουθηθούν επιτυγχάνεται ένα επιθυμητό αποτέλεσμα. Ορισμός. Παραδείγματα αλγορίθμων :

Télécharger la présentation

Παραδείγματα αλγορίθμων : για την παρασκευή ενός κέικ για τον υπολογισμό του Μ.Ο. του τετραμήνου

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Κεφάλαιο 2 : Βασικές Έννοιες Αλγορίθμων 2.1 Τι είναι αλγόριθμος Αλγόριθμος είναι ένα πεπερασμένο σύνολο εντολών αυστηρά καθορισμένων και εκτελέσιμων σε πεπερασμένο χρόνο, οι οποίες αν ακολουθηθούν επιτυγχάνεται ένα επιθυμητό αποτέλεσμα. Ορισμός Παραδείγματα αλγορίθμων: • για την παρασκευή ενός κέικ • για τον υπολογισμό του Μ.Ο. του τετραμήνου • για να εκκινήσει ένα αυτοκίνητο • για την πρωινή προετοιμασία για το σχολείο / νυχτερινή έξοδο Η αλληλουχία ενεργειών δεν είναι πάντα μία και μοναδική.

  2. Κεφάλαιο 2 : Βασικές Έννοιες Αλγορίθμων 2.1 Κριτήρια ενός αλγορίθμου • Είσοδος (input) : καμία, μία ή περισσότερες τιμές δεδομένων ως είσοδοι στον αλγόριθμο • Έξοδος (output) : ο αλγόριθμος «παράγει» τουλάχιστον μία τιμή δεδομένων ως αποτέλεσμα • Καθοριστικότητα (defineteness) : να εξασφαλίζεται ο «ορισμός» κάθε εντολής • Περατότητα (finiteness) : ο αλγόριθμος τελειώνει μετά από πεπερασμένα βήματα εκτέλεσης • Αποτελεσματικότητα (effectiveness) : ο αλγόριθμος αποτελείται από μεμονωμένες απλές-εκτελέσιμες εντολές

  3. Κεφάλαιο 2 : Βασικές Έννοιες Αλγορίθμων 2.3 Περιγραφή & αναπαράσταση αλγορίθμων • ελεύθερο κείμενο: αποτελεί τον πιο ανεπεξέργαστο και αδόμητο τρόπο παρουσίασης αλγορίθμου. • φυσική γλώσσα κατά βήματα: περιγραφή κατά βήματα. • διαγραμματικές τεχνικές: συνιστούν ένα γραφικό τρόπο παρουσίασης του αλγορίθμου (η πιο γνωστή είναι το διάγραμμα ροής (flow chart)) • κωδικοποίηση (coding): πρόγραμμα γραμμένο είτε με μία ψευδογλώσσα είτε σε κάποιο προγραμματιστικό περιβάλλον που όταν εκτελεσθεί θα δώσει τα ίδια αποτελέσματα με τον αλγόριθμο.

  4. Κεφάλαιο 2 : Βασικές Έννοιες Αλγορίθμων 2.3 Περιγραφή & αναπαράσταση αλγορίθμων Αρχικά διαβάζουμε τους συντελεστές α, β, γ του τριωνύμου. Στη συνέχεια, υπολογίζουμε τη διακρίνουσα με τον τύπο β2-4αγ και ανάλογα με την τιμή της, υπολογίζουμε τις ρίζες του τριωνύμου. Δηλαδή, αν η διακρίνουσα είναι αρνητική, το τριώνυμο δεν επιλύεται στο σύνολο των πραγματικών αριθμών. Ενώ, αν η διακρίνουσα ισούται με μηδέν, η λύση είναι –β/2α. Τέλος, αν η διακρίνουσα είναι θετική, τότε το τριώνυμο έχει τις εξής δύο λύσεις: …… Αναπαράσταση αλγορίθμου με ελεύθερο κείμενο

  5. Κεφάλαιο 2 : Βασικές Έννοιες Αλγορίθμων 2.3 Περιγραφή & αναπαράσταση αλγορίθμων Διαβάζουμε τους συντελεστές α, β, γ Υπολογίζουμε τη διακρίνουσα (Δ=β2-4αγ) Αν Δ<0 τότε το τριώνυμο δεν επιλύεται Αν Δ=0 τότε χ=–β/2α Αν Δ>0 τότε χ1=(-β+ΤΡ(Δ))/2α και χ2=(-β-ΤΡ(Δ))/2α Αναπαράσταση αλγορίθμου σε φυσική γλώσσα κατά βήματα

  6. Κεφάλαιο 2 : Βασικές Έννοιες Αλγορίθμων 2.3 Περιγραφή & αναπαράσταση αλγορίθμων Αναπαράσταση αλγορίθμου με διάγραμμα ροής ΑΡΧΗ Διάβασε α, β,γ Δ  β2-4αγ ΟΧΙ ΟΧΙ Εκτύπωσε … ΝΑΙ Εκτύπωσε ‘Δε λύνεται’ Δ<0 Δ>0 ΝΑΙ Εκτύπωσε ... ΤΕΛΟΣ

  7. Κεφάλαιο 2 : Βασικές Έννοιες Αλγορίθμων 2.3 Περιγραφή & αναπαράσταση αλγορίθμων • Αλγόριθμος Τριώνυμο • Διάβασε α, β, γ • Δ  β2 – 4αγ • Αν Δ<0 τότε • Εκτύπωσε ‘Δεν υπάρχει λύση’ • Αλλιώς_αν Δ=0 τότε • χ  -β/(2α) • Εκτύπωσε χ • Αλλιώς • χ1 -β+ΤΡ(Δ)/(2α) • χ2 -β+ΤΡ(Δ)/(2α) • Εκτύπωσε χ1, χ2 • Τέλος_αν • Τέλος Τριώνυμο αναπαράσταση αλγορίθμου με κωδικοποίηση σε ψευδογλώσσα

  8. Κεφάλαιο 2 : Βασικές Έννοιες Αλγορίθμων 2.4 Βασικές αλγοριθμικές δομές • Δομή ακολουθίας • Δομή επιλογής • Διαδικασίες πολλαπλών επιλογών • Εμφωλευμένες Διαδικασίες • Δομή επανάληψης

  9. Η ακολουθιακή δομή εντολών (σειριακών βημάτων) χρησιμοποιείται για την αντιμετώπιση απλών προβλημάτων, όπου είναι δεδομένη η σειρά εκτέλεσης ενός συνόλου ενεργειών. Παράδειγμα: Να διαβασθούν δύο αριθμοί, να υπολογισθεί και να εκτυπωθεί το γινόμενο τους. Αλγόριθμος Γινόμενο Διάβασε a, b c  a * b Εκτύπωσε c Τέλος Γινόμενο Κεφάλαιο 2 : Βασικές Έννοιες Αλγορίθμων 2.4.1 Δομή ακολουθίας Εντολή ανάγνωσης/εισόδου Εντολή εκχώρησης Εντολή εξόδου Να γίνει και διάγραμμα ροής!!! www.pseudoglossa.gr

  10. Κεφάλαιο 2 : Βασικές Έννοιες Αλγορίθμων 2.4.1 Δομή ακολουθίας • Αρχίζει με τη δηλωτική εντολή Αλγόριθμος … • Τελειώνει με τη δηλωτική εντολή Τέλος … • Εισαγωγή δεδομένων: Διάβασε … • Κάθε λέξη της ψευδογλώσσας που προσδιορίζει μια σαφή ενέργεια αποκαλείται εντολή • μεταβλητή  έκφραση : εντολή εκχώρησης τιμής γίνονται οι πράξεις στην έκφραση και το αποτέλεσμα εκχωρείται στη μεταβλητή • Εκτύπωσε … : ή Εμφάνισε … Γράφει το αποτέλεσμα στον εκτυπωτή ή την οθόνη • Κριτήρια αλγορίθμων: ικανοποιούνται;

  11. Παράδειγμα: Με δεδομένη την ακτίνα, να υπολογισθεί το εμβαδόν του αντίστοιχου κύκλου και το εμβαδόν του τετραγώνου που είναι περιγεγραμμένο στον κύκλο αυτόν. Αλγόριθμος Εμβαδά Διάβασε aktina kyklos  3.14 * aktina * aktina plevra  2 * aktina tetragwno plevra * plevra Εκτύπωσε kyklos, tetragwno Τέλος Εμβαδά Κεφάλαιο 2 : Βασικές Έννοιες Αλγορίθμων 2.4.1 Δομή ακολουθίας Να γίνει και διάγραμμα ροής!!!

  12. Κεφάλαιο 2 : Βασικές Έννοιες Αλγορίθμων 2.4.1 Στοιχεία Ψευδογλώσσας • Σταθερές: • Προκαθορισμένες τιμές που μένουν σταθερές σε όλη τη διάρκεια εκτέλεσης ενός αλγορίθμου • Αριθμητικές, π.χ. 123, -5, 3.14 • Αλφαριθμητικές: Οποιοιδήποτε χαρ/ρες μέσα σε εισαγωγικά, π.χ. “Κώστας”, “Αποτελέσματα” • Λογικές, δύο τιμές: Αληθής, Ψευδής • Μεταβλητή: • Ένα γλωσσικό αντικείμενο που παριστάνει ένα δεδομένο • Έχει όνομα, τύπο, τιμή • Τύποι: Αριθμητικές, Αλφαριθμητικές, Λογικές • Π.χ. α=18, όνομα=“Κώστας”, έγινε=Αληθές

  13. Κεφάλαιο 2 : Βασικές Έννοιες Αλγορίθμων 2.4.1 Στοιχεία Ψευδογλώσσας • Τελεστές: • Σύμβολα που χρησιμοποιούνται στις διάφορες πράξεις • Αριθμητικοί: +, -, *, /, ^, div, mod • Συγκριτικοί: , <, =, , >  • Λογικοί: και, ή, όχι • Παρενθέσεις, Ύψωση σε δύναμη, Πολ/σμός-Διαίρεση-DIV-MOD, Πρόσθεση-Αφαίρεση • Αριθμητικοί, Συγκριτικοί, Λογικοί • Εκφράσεις: • Σχηματίζονται από σταθερές, μεταβλητές, συναρτήσεις, τελεστές, παρενθέσεις (απλή ή σύνθετη) • απόδοση τιμών στις μεταβλητές, εκτέλεση των πράξεων σύμφωνα με την ιεραρχία των πράξεων • Παραδείγματα: • 5*α-β/2+4*(γ+1) • 2*ημ(ω)+2^2

  14. Κεφάλαιο 2 : Βασικές Έννοιες Αλγορίθμων Δομή επιλογής: αν…τότε Ηδομή της επιλογής χρησιμοποιείται στις περιπώσεις που χρειάζεται να λαμβάνονται κάποιες αποφάσεις με βάση κάποια δεδομένα κριτήρια, που μπορεί να είναι διαφορετικά για κάθε διαφορετικό στιγμιότυπο ενός προβλήματος. Παράδειγμα: Να διαβαστεί ένας αριθμός και να εκτυπωθεί η απόλυτη τιμή του • Αλγόριθμος Απόλυτη_Τιμή • Διάβασε a • Αν a < 0 τότε a  a*(-1) • Εκτύπωσε a • Τέλος Απόλυτη_Τιμή Να γίνει και διάγραμμα ροής!!!

  15. Κεφάλαιο 2 : Βασικές Έννοιες Αλγορίθμων Δομή επιλογής: αν…τότε…αλλιώς Παράδειγμα: Να διαβασθούν δύο αριθμοί και να εκτυπωθούν με φθίνουσα σειρά (πρώτα ο μεγαλύτερος και μετά ο μικρότερος). Αλγόριθμος Διάταξη Διάβασε α, β αν α > β τότε Εμφάνισε α , β αλλιώς Εμφάνισε β ,α τέλος_αν Τέλος Διάταξη

  16. Δομή Επιλογής: Τι να διαβάσετε • ΔΕΝ διαβάζουμε τα διαγράμματα ροής • Θεωρία §2.4.2 • Σαββάλα: 5.1, 5.2, 5.3,

  17. Κεφάλαιο 8: Επιλογή και επανάληψηΔιδακτικοί στόχοι • να σχηματίζετε λογικές εκφράσεις • να διατυπώνετε τις εντολές ελέγχου ΑΝ • να επιλέγετε την καταλληλότερη εντολή ΑΝ • να διατυπώνετε τις εντολές επανάληψης • να επιλέγετε την καλύτερη δομή επανάληψης • να συντάσσετε προγράμματα που χρησιμοποιούν και τις τρεις βασικές δομές: της ακολουθίας, της επιλογής και της επανάληψης.

  18. Κεφάλαιο 8: Επιλογή και επανάληψηΛογικές Εκφράσεις • Λογικές εκφράσειςΤελεστής Ελεγχόμενη σχέση Παράδειγμα • = Ισότητα Done = ΑΛΗΘΕΣ • <> Ανισότητα Ονομα1 <> 'Κώστας' • > Μεγαλύτερο από Τιμή>10000 • >= Μεγαλύτερο ή ίσο Χ+Υ >= (Α+Β)/Γ • < Μικρότερο από Κλειδί < ‘Ωρολόγιον’ • <= Μικρότερο ή ίσο Βάρος <= 500 • Σύνθετες λογικές εκφράσεις • Λογικοί τελεστές: ΚΑΙ, Η, ΌΧΙ. Έχουν χαμηλότερη ιεραρχία από τους αριθμητικούς τελεστές.

  19. Κεφάλαιο 2 : Βασικές Έννοιες Αλγορίθμων Λογικές Πράξεις: διάζευξη (Η) Παράδειγμα: Να διαβαστούν οι συντεταγμένες ενός σημείου, και να εκτυπωθεί αν είναι πάνω στους άξονες ή όχι. Αλγόριθμος Σημείο_στο_χώρο Διάβασεx,y ανx=0 Η y=0 τότε Εκτύπωσε“Το σημείο (”, x, “,”, y, “) βρίσκεται πάνω στους άξονες” αλλιώς Εκτύπωσε“Το σημείο (”, x, “,”, y, “) δεν βρίσκεται πάνω στους άξονες” τέλος_αν Τέλος Σημείο_στο_χώρο Το Η δύο προτάσεων είναι αληθές όταν τουλάχιστον μία είναι αληθής:

  20. Κεφάλαιο 2 : Βασικές Έννοιες Αλγορίθμων Λογικές Πράξεις: σύζευξη (ΚΑΙ) Παράδειγμα: Να διαβαστεί η ηλικία και να εκτυπώνεται αν είναι έφηβος (12  ηλικία  18) ή όχι. Το ΚΑΙ δύο προτάσεων είναι αληθές όταν και οι δύο είναι αληθείς: Αλγόριθμος έφηβος Διάβασε ηλικία αν ηλικία >= 12 ΚΑΙ ηλικία <= 18 τότε Εκτύπωσε“έφηβος” αλλιώς Εκτύπωσε“όχι έφηβος” τέλος_αν Τέλος έφηβος

  21. Κεφάλαιο 2 : Βασικές Έννοιες Αλγορίθμων Λογικές Πράξεις: άρνηση (ΌΧΙ) Παράδειγμα: Κάποιος έχει αργία μόνο τις Κυριακές. Να διαβαστεί η ημέρα, και να τυπωθεί το μήνυμα «Δουλεύω! Όχι πάλι!», αν δουλεύει σήμερα. Το ΌΧΙ μίας πρότασης είναι αληθές όταν η πρόταση είναι ψευδής ΑλγόριθμοςArbeit_Macht_Frei Διάβασε ημέρα ανOXI (ημέρα=“Κυριακή”) τότε Εκτύπωσε“Δουλεύω! Όχι πάλι!” τέλος_αν ΤέλοςArbeit_Macht_Frei

  22. Κεφάλαιο 2 : Βασικές Έννοιες ΑλγορίθμωνΛογικές Πράξεις: Προτεραιότητα, Συγκρίσεις ΘΕΩΡΙΑ: Προτεραιότητα λογικών τελεστών: 1η: ΌΧΙ π.χ. όχι Β και Α = (όχι Β) και Α 2η:ΚΑΙ π.χ. Α ή Β και Γ = Α ή (Β και Γ) 3η: Η π.χ. Α και όχι Β ή Γ = (Α και (όχι Β)) ή Γ ΘΕΩΡΙΑ: Συγκρίσεις Αλφαριθμητικών: Τα αλφαριθμητικά συγκρίνονται αλφαβητικά: “A” < “B” “Antoni” > “Amalia” “Ω” > “Ψητοπωλείο” ΘΕΩΡΙΑ: Συγκρίσεις Λογικών: Σύγκριση λογικών έχει έννοια μόνο στην περίπτωση = και < > Π.χ. done = Αληθές απάντηση1 < > απάντηση2

  23. Σύνταξη ΑΝσυνθήκη ΤΟΤΕεντολή-1εντολή-2…εντολή-νΤΕΛΟΣ_ΑΝ ΠαράδειγμαΑΝαριθμός > 0 ΤΟΤΕΓΡΑΨΕ'Ο αριθμός είναι θετικός'πλήθος_θετικών <- πλήθος_θετικών +1ΤΕΛΟΣ_ΑΝ Κεφάλαιο 8: Επιλογή και επανάληψη Εντολή ΑΝ

  24. ΣύνταξηΑΝσυνθήκη ΤΟΤΕεντολή-1 εντολή-2…εντολή-νΑΛΛΙΩΣεντολή-1 Εντολή-2…εντολή-νΤΕΛΟΣ_ΑΝ ΠαράδειγμαΑΝ αριθμός > 0 ΤΟΤΕΓΡΑΨΕ'Ο αριθμός είναι θετικός’Πλήθος_θετικών <-Πλήθος_θετικών+1ΑΛΛΙΩΣΓΡΑΨΕ'Ο αριθμός είναι αρνητικός ή 0’Πλήθος_μη_θετικών <- Πλήθος_μη_θετικών +1ΤΕΛΟΣ_ΑΝ Κεφάλαιο 8: Επιλογή και επανάληψηΕντολή ΑΝ … ΤΟΤΕ … ΑΛΛΙΩΣ

  25. Κεφάλαιο 2 : Βασικές Έννοιες Αλγορίθμων Διαδικασίες πολλαπλών επιλογών Παράδειγμα: Να διαβασθεί ένας ακέραιος και να εκτυπωθεί η αντίστοιχη μέρα της εβδομάδας αν ο ακέραιος έχει τιμή 1 έως 7 διαφορετικά να εκτυπωθεί “λάθος ημέρα”. Οι διαδικασίες των πολλαπλών επιλογών χρησιμοποιούνται στα προβλήματα όπου μπορεί να ληφθούν διαφορετικέςαποφάσεις ανάλογα με την τιμή που παίρνει μία μεταβλητή 1η Μορφή: αν… αλλιώς_αν • Αλγόριθμος Ημέρα_εβδομάδας • Διάβασε μέρα • αν μέρα = 1 τότε Εκτύπωσε “Κυριακή” • αλλιώς_αν μέρα = 2 τότε Εκτύπωσε “Δευτέρα” • αλλιώς_αν μέρα = 3 τότε Εκτύπωσε “Τρίτη” • αλλιώς_αν μέρα = 4 τότε Εκτύπωσε “Τετάρτη” • αλλιώς_αν μέρα = 5 τότε Εκτύπωσε “Πέμπτη” • αλλιώς_αν μέρα = 6 τότε Εκτύπωσε “Παρασκευή” • αλλιώς_αν μέρα = 7 τότε Εκτύπωσε “Σάββατο” • αλλιώς Εκτύπωσε “Έδωσες λάθος μέρα ”, μέρα • τέλος_αν • ΤέλοςΗμέρα_εβδομάδας

  26. Κεφάλαιο 2 : Βασικές Έννοιες Αλγορίθμων Διαδικασίες πολλαπλών επιλογών Αλγόριθμος Ημέρα_εβδομάδας Διάβασε μέρα Επέλεξε μέρα Περίπτωση1 Εκτύπωσε“Κυριακή” Περίπτωση2 Εκτύπωσε“Δευτέρα” Περίπτωση3 Εκτύπωσε“Τρίτη” Περίπτωση4 Εκτύπωσε“Τετάρτη” Περίπτωση5 Εκτύπωσε“Πέμπτη” Περίπτωση6 Εκτύπωσε“Παρασκευή” Περίπτωση7 Εκτύπωσε“Σάββατο” Περίπτωσηαλλιώς Εκτύπωσε“Έδωσες λάθος μέρα”, μέρα, “.” τέλος_επιλογών ΤέλοςΗμέρα_εβδομάδας 2η Μορφή: Επέλεξε έκφραση Περίπτωσητιμές1 εντολές1 Περίπτωσητιμές2 εντολές2 …. Περίπτωσηαλλιώς εντολέςαλλιώς τέλος_επιλογών

  27. ΣύνταξηΑΝσυνθήκη1 ΤΟΤΕεντολή-1 εντολή-2…ΑΛΛΙΩΣ_ΑΝ συνθήκη2 ΤΟΤΕεντολή-1εντολή-2…ΑΛΛΙΩΣεντολή-1εντολή-2…ΤΕΛΟΣ_ΑΝ ΠαράδειγμαΑΝ αριθμός > 0 ΤΟΤΕΓΡΑΨΕ'Ο αριθμός είναι θετικός’Πλήθος_θετικών <-Πλήθος_θετικών +1ΑΛΛΙΩΣ_ΑΝ αριθμός < 0ΤΟΤΕ ΓΡΑΨΕ'Ο αριθμός είναι αρνητικός’Πλήθος_αρνητικών<- Πλήθος_αρνητικών +1ΑΛΛΙΩΣΓΡΑΨΕ'Ο αριθμός είναι 0’Πλήθος_0 <- Πλήθος_0 +1ΤΕΛΟΣ_ΑΝ Κεφάλαιο 8: Επιλογή και επανάληψηΕντολή ΑΝ … ΤΟΤΕ … ΑΛΛΙΩΣ_ΑΝ

  28. ΣύνταξηΕΠΕΛΕΞΕέκφραση ΠΕΡΙΠΤΩΣΗ λίστα_τιμών1 εντολές1ΠΕΡΙΠΤΩΣΗ λίστα_τιμών2 εντολές2 …… ΠΕΡΙΠΤΩΣΗ ΑΛΛΙΩΣεντολές_Αλλιώς ΤΕΛΟΣ_ΕΠΙΛΟΓΩΝ ΠαράδειγμαΔΙΑΒΑΣΕ μήνας ΕΠΕΛΕΞΕ μήνας ΠΕΡΙΠΤΩΣΗ ‘Δεκ’, ‘Ιαν’,’Φεβ’ ΓΡΑΨΕ‘Χειμώνας’ ΠΕΡΙΠΤΩΣΗ ‘Μαρ’, ‘Απρ’,’Μαι’ ΓΡΑΨΕ‘Άνοιξη’ ΠΕΡΙΠΤΩΣΗ ‘Ιουν’, ‘Ιουλ’,’Αυγ’ ΓΡΑΨΕ‘Καλοκαίρι’ ΠΕΡΙΠΤΩΣΗ ‘Σεπ’, ‘Οκτ’,’Νοε’ ΓΡΑΨΕ‘Φθινόπωρο’ ΠΕΡΙΠΤΩΣΗ ΑΛΛΙΩΣΓΡΑΨΕ‘Έδωσες λάθος μήνα!’ΤΕΛΟΣ_ΕΠΙΛΟΓΩΝ Κεφάλαιο 8: Επιλογή και επανάληψηΕντολή ΕΠΕΛΕΞΕ

  29. Κεφάλαιο 2 : Βασικές Έννοιες Αλγορίθμων Εμφωλευμένες Δομές Οι εντολές που βρίσκονται μέσα σε μια δομή επιλογής μπορεί να είναι επίσης δομή επιλογής. Τότε έχουμε εμφωλευμένες διαδικασίες. Αλγόριθμος Χριστουγεννιάτικα_δώρα Διάβασε φύλο, ηλικία αν φύλο = “Αρσενικό” τότε αν ηλικία >= 18 τότε Εκτύπωσε “Γραβάτα” αλλιώς Εκτύπωσε “Μπάλα” τέλος_αν αλλιώς αν ηλικία >= 18 τότε Εκτύπωσε “Άρωμα” αλλιώς Εκτύπωσε “Κούκλα” τέλος_αν τέλος_αν Τέλος Χριστουγεννιάτικα_δώρα Παράδειγμα: Χριστουγεννιάτικα δώρα Να γραφεί αλγόριθμος που να δέχεται το φύλο και την ηλικία ενός ατόμου, και να εκτυπώνει το δώρο που θα του πάρουμε ως εξής: Άντρας  Γραβάτα Γυναίκα Άρωμα Αγόρι  Μπάλα Κορίτσι Κούκλα (Υποθέστε ότι για φύλο ο χρήστης δίνει «Αρσενικό» ή «Θηλυκό», χωρίς περίπτωση λάθους)

  30. Κεφάλαιο 2 : Βασικές Έννοιες Αλγορίθμων Εμφωλευμένες Δομές Παρατήρηση: Με εμφωλευμένες δομές (διαδικασίες)μπορούμε να υλοποιήσουμε πολλαπλή επιλογή: Αλγόριθμος Χαρακτηρισμός_βαθμού Διάβασε βαθμός αν βαθμός = “Α” τότε Εκτύπωσε “Άριστα” αλλιώς αν βαθμός = “Β” τότε Εκτύπωσε “Καλά” αλλιώς αν βαθμός = “Γ” τότε Εκτύπωσε “Μέτρια” αλλιώς Εκτύπωσε “Λάθος Βαθμός” τέλος_αν τέλος_αν τέλος_αν Τέλος Χαρακτηρισμός_βαθμού Παράδειγμα: Χαρακτηρισμός βαθμού Να γραφεί αλγόριθμος που να δέχεται το βαθμό ως Α, Β ή Γ, και να τυπώνει “Άριστα”, “Καλά” ή “Μέτρια”, ή μήνυμα λάθους Προσοχή: Το τέλος_αν κλείνει το πιο κοντινό του αν.

  31. Παράδειγμα ΔΙΑΒΑΣΕ νόμισμα ΔΙΑΒΑΣΕ μισθός ΑΝνόμισμα=‘Δρχ’ ΤΟΤΕΑΝμισθός> 500000 ΤΟΤΕ ΓΡΑΨΕ ‘Καλά λεφτά!’ ΑΛΛΙΩΣ ΓΡΑΨΕ ‘Εξαθλίωση…’ ΤΕΛΟΣ_ΑΝ ΑΛΛΙΩΣ_ΑΝνόμισμα=‘Ευρώ’ ΤΟΤΕΑΝμισθός> 1467,35 ΤΟΤΕ ΓΡΑΨΕ ‘Kala lefta!’ ΑΛΛΙΩΣ ΓΡΑΨΕ ‘Eksathliwsi…’ ΤΕΛΟΣ_ΑΝ ΤΕΛΟΣ_ΑΝ ΠαράδειγμαΑΝ αριθμός > 0 ΤΟΤΕΓΡΑΨΕ'Ο αριθμός είναι θετικός’Πλήθος_θετικών <-Πλήθος_θετικών+1ΑΛΛΙΩΣ ΑΝ αριθμός < 0 ΤΟΤΕΓΡΑΨΕ'Ο αριθμός είναι αρνητικός’Πλήθος_Αρν <- Πλήθος_Αρν +1ΑΛΛΙΩΣΓΡΑΨΕ'Ο αριθμός είναι 0’Πλήθος_0 <- Πλήθος_0 +1ΤΕΛΟΣ_ΑΝ ΤΕΛΟΣ_ΑΝ Κεφάλαιο 8: Επιλογή και επανάληψηΕμφωλευμένα ΑΝ

  32. Κεφάλαιο 8: Επιλογή και επανάληψηΤι να διαβάσετε Θεωρία: Παρ. 8.1, Ερωτήσεις 1-6 Παραδείγματα: Από Τετράδιο Μαθητή, Παρ.1, 2 (Το 2 χρειάζεται διορθώσεις) Ασκήσεις: Τετράδιο Μαθητή: ΔΤ1, ΔΤ2, ΔΕ1 με προσοχή, χωρίς περιττούς ελέγχους!, ΔΣ2 οπωσδήποτε

  33. Κεφάλαιο 2 : Βασικές ΈννοιεςΑλγορίθμων Δομή επανάληψης Η δομή της επανάληψης χρησιμοποιείται στις περιπώσεις όπου μία ακολουθία εντολών πρέπει να εφαρμοσθεί σε ένα σύνολο περιπτώσεων, που έχουν κάτι κοινό. Παράδειγμα: Να γραφεί αλγόριθμος που να εμφανίζει τους αριθμούς από 1 έως 100. • Αλγόριθμος Παράδειγμα_2.7 • i 1 • Όσο i <= 100 επανάλαβε • Εμφάνισε i • i  i + 1 • Τέλος_επανάληψης • Τέλος Παράδειγμα _2.7

  34. Κεφάλαιο 2 : Βασικές Έννοιες Αλγορίθμων Δομή επανάληψης: όσο-επανάλαβε Ηδομή επανάληψης χρησιμοποιείται στις περιπώσεις που χρειάζεται να εφαρμοστεί η ίδια ακολουθία εντολών πάνω σε διαφορετικά δεδομένα ενός συνόλου. π.χ. τόκος = ποσό * επιτόκιο Παράδειγμα: Να εκτυπωθούν όλοι οι αριθμοί από το 1 μέχρι το 100. Αλγόριθμος Μέτρημα μ  1 όσο μ <= 100 επανάλαβε Εμφάνισε μ μ  μ + 1 τέλος_επανάληψης Τέλος Μέτρημα

  35. Κεφάλαιο 2 : Βασικές Έννοιες Αλγορίθμων Δομή επανάληψης : όσο-επανάλαβε (2) • 1η μορφή : • όσο συνθήκη επανάλαβε • εντολές • τέλος_επανάληψης • Λειτουργία • ελέγχεται η συνθήκη • αν είναι αληθής: • * εκτελούνται οι εντολές • * πηγαίνει στο βήμα 1 • 3. αν είναι ψευδής: • * πηγαίνει στην εντολή που ακολουθεί το τέλος_επανάληψης • Παρατήρηση : • Ο βρόγχος μπορεί να μην • εκτελεστεί καμία φορά! Παράδειγμα: Να διαβάζεται ένας αριθμός και να τυπώνονται τόσα “*”. Αλγόριθμος Αστεράκια Διάβασε α όσο α > 0 επανάλαβε Εκτύπωσε “*” α  α – 1 τέλος_επανάληψης Τέλος Αστεράκια • Ζυγοί αριθμοί από 2 έως 100 • Οι πρώτοι 100 ζυγοί αριθμοί

  36. Κεφάλαιο 2 : Βασικές Έννοιες ΑλγορίθμωνΔομή επανάληψης: Παραδείγματα Να γραφεί αλγόριθμος που θα διαβάζει θετικούς αριθμούς μέχρι να δοθεί κάποιος αρνητικός αριθμός οπότε και θα τυπώνει το πλήθος και τη μέση τιμή των θετικών και μηδενικών αριθμών που δόθηκαν. Αλγόριθμος Θετικοί_Αριθμοί Αθρ  0 πλήθος  0 διάβασεx όσοx > 0 επανάλαβε Αθρ  Αθρ + x πλήθος  πλήθος + 1 διάβασεx τέλος_επανάληψης εκτύπωσε“Πλήθος αριθμών: ”,πλήθος αν πλήθος > 0 τότε εκτύπωσε“Μέση τιμή:”,Αθρ/πλήθος τέλος_αν Τέλος Θετικοί_Αριθμοί

  37. ΣύνταξηΟΣΟ συνθήκη ΕΠΑΝΑΛΑΒΕ εντολές ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ Η ΟΣΟ είναι η γενικότερη εντολή επανάληψης: μπορεί να υλοποιήσει όλες τις υπόλοιπες. Παράδειγμα i=1 βρέθηκε = ΨΕΥΔΕΣ ΟΣΟ ΌΧΙ βρέθηκε ΚΑΙ iΝ ΕΠΑΝΑΛΑΒΕ ΑΝ Α[i]=κλειδί ΤΟΤΕ βρέθηκε = ΑΛΗΘΕΣ θέση = i ΑΛΛΙΩΣ i=i+1 ΤΕΛΟΣ_ΑΝ ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ Κεφάλαιο 8: Επιλογή και επανάληψηΕντολή ΟΣΟ…ΕΠΑΝΑΛΑΒΕ

  38. Κεφάλαιο 2 : Βασικές ΈννοιεςΑλγορίθμων Δομή επανάληψης Παράδειγμα 2.8 : Να διαβάζονται και να εκτυπώνονται όσοι θετικοί αριθμοί δίνονται από το πληκτρολόγιο. Ο αλγόριθμος τελειώνει όταν δοθεί ένας αρνητικός αριθμός. • Αλγόριθμος Παράδειγμα_2.8 • Αρχή_επανάληψης • Διάβασε x • Εμφάνισε x • Μέχρις_ότου x < 0 • Τέλος Παράδειγμα _2.8

  39. Κεφάλαιο 2 : Βασικές Έννοιες Αλγορίθμων Δομή επανάληψης : αρχή_επανάληψης • 2η μορφή : • αρχή_επανάληψης • εντολές • μέχρις_ότου συνθήκη • Λειτουργία • εκτελούνται οι εντολές • ελέγχεται η συνθήκη • αν είναι ψευδής: • * πηγαίνει στο βήμα 1 • 4. αν είναι αληθής: • * πηγαίνει στην εντολή που ακολουθεί το μέχρις_ότου • Παρατήρηση : • - Ο βρόγχος εκτελείται πάντα • τουλάχιστον μία φορά! • -Χρησιμοποιείται συχνά για • εισαγωγή έγκυρων δεδομένων Παράδειγμα: Να διαβάζεται ένας αριθμός που αντιστοιχεί οπωσδήποτε σε έγκυρο τηλέφωνο στην Αθήνα. Αλγόριθμος Τηλέφωνο_Αθήνας αρχή_επανάληψης Διάβασε τηλ μέχρις_ότουτηλ >= 2000000 και τηλ <= 9999999 Εμφάνισε τηλ Τέλος Τηλέφωνο_Αθήνας

More Related