Κεφάλαιο 2 : Βασικές Έννοιες Αλγορίθμων 2.1 Τι είναι αλγόριθμος

Slides:



Advertisements
Παρόμοιες παρουσιάσεις
Επαναληπτικό Μάθημα ΑΕΠΠ
Advertisements

Βασικές έννοιες αλγορίθμων
Εισαγωγή στους Αλγορίθμους
7.5.2 Αντικειμενοστραφής προγραμματισμός
Τι είναι ο υπολογιστής; Τι είναι ο προγραμματισμός
ΥΠΟΠΡΟΓΡΑΜΜΑΤΑ ΤΜΗΜΑΤΙΚΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ
Εισαγωγή στους Αλγορίθμους
ΣΤΟΙΧΕΙΑ ΨΕΥΔΟΚΩΔΙΚΑ ΒΑΣΙΚΕΣ ΔΟΜΕΣ ΒΑΣΙΚΟΙ ΑΛΓΟΡΙΘΜΟΙ ΠΙΝΑΚΩΝ
ΑΛΓΟΡΙΘΜΟΙ.
ΑΕΠΠ 2ο Κεφάλαιο: Βασικές Έννοιες Αλγορίθμων
Ενότητα Η Δομή Επανάληψης
Σαρημπαλίδης Ιωάννης Εισαγωγή στους Αλγορίθμους. Γεια σας.
Β΄ ΓΕΛ ΕισΑρχΕπ Η/Υ παρ – 2.2.5
ΕΚΠΑΙΔΕΥΤΙΚΗ ΠΡΟΣΕΓΓΙΣΗ ΤΗΣ ΕΥΡΥΤΕΡΗΣ ΕΝΝΟΙΑΣ ΤΟΥ ΑΛΓΟΡΙΘΜΟΥ ΧΡΗΣΙΜΟΠΟΙΩΝΤΑΣ ΔΙΑΦΟΡΕΤΙΚΟ ΛΟΓΙΣΜΙΚΟ ΓΙΑ ΚΑΘΕ ΠΤΥΧΗ ΤΟΥ Κάππας Κων/νος Επιμορφωτής ΤΠΕ -
Κεφάλαιο 2. Τι είναι αλγόριθμος  Η λέξη αλγόριθμος προέρχεται από μελέτη του Πέρση μαθηματικού Abu Ja’far Mohammed ibn al Khowarizmi  Στα λατινικά ξεκινούσε.
Η αλληλουχία των ενεργειών δεν είναι πάντα μία και μοναδική!!!
Εισαγωγή στις Αρχές της Επιστήμης των Η/Υ» Β΄ τάξης Γενικού Λυκείου
Ασκήσεις.
Η αλληλουχία των ενεργειών δεν είναι πάντα μία και μοναδική!!!
Β΄ ΓΕΛ ΕισΑρχΕπ Η/Υ παρ – 2.2.5
Η Δομή Επανάληψης Από τη Δομή Επανάληψης Για στην Όσο Η παρουσίαση της εντολής Όσο είναι από την εισήγηση των κ. Σ. Δουκάκη και Π. Τσιωτάκη στο 3ο Συνέδριο.
Κεφ.1 Εισαγωγη στην εννοια του Αλγοριθμου και στον Προγραμματισμο
Μεταβλητές – εντολές εκχώρησης- δομή ακολουθίας
ΘΕΜΑΤΙΚΗ ΕΝΟΤΗΤΑ 2: ΘΕΜΑΤΑ ΘΕΩΡΗΤΙΚΗΣ ΕΠΙΣΤΗΜΗΣ Η/Υ
ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΕΝΝΟΙΑ ΤΟΥ ΑΛΓΟΡΙΘΜΟΥ ΚΑΙ ΣΤΟΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ
Ενότητα Α.4. Δομημένος Προγραμματισμός
Μάθημα: Εισαγωγή στις Αρχές της Επιστήμης των Υπολογιστών Β’ Τάξη ΕΠΑ
Η αλληλουχία των ενεργειών δεν είναι πάντα μία και μοναδική!!!
Αλγόριθμοι 2.1.1,
ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ Συγγραφείς Α.Βακάλη Η. Γιαννόπουλος Ν. Ιωαννίδης Χ.Κοίλιας Κ. Μάλαμας Ι. Μανωλόπουλος Π. Πολίτης Γ΄ τάξη.
2/4/2015Γ' ΤΑΞΗ Υπολογισμός Ριζών Τριωνύμου1 Γλώσσα Προγραμματισμού LOGO.
Computers: Information Technology in Perspective By Long and Long Copyright 2002 Prentice Hall, Inc. Προγραμματισμός Η / Υ 6 η Διάλεξη.
1. 2 Τι είναι αλγόριθμος; 1. 3 Ιδιότητες ενός αλγορίθμου 1
ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ ΑΛΓΟΡΙΘΜΩΝ
ΘΕΜΑΤΙΚΗ ΕΝΟΤΗΤΑ 2: ΘΕΜΑΤΑ ΘΕΩΡΗΤΙΚΗΣ ΕΠΙΣΤΗΜΗΣ Η/Υ
ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ. ΥΠΟΛΟΓΙΣΤΗΣ Μηχανή που μπορεί να φέρει σε πέρας πνευματικές εργασίες ρουτίνας με μεγάλη ταχύτητα.
Η Δομή Επανάληψης οι 3 Δομές Επανάληψης ή αλλιώς οι τρεις σωματοφύλακες… Η παρουσίαση της εντολής Μέχρις_ότου είναι από την εισήγηση των κ. Σ. Δουκάκη.
ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ ΑΛΓΟΡΙΘΜΩΝ
Ερωτήσεις & Φύλλο εργασίας
ΚΕΦΑΛΑΙΟ Τι είναι αλγόριθμος
ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ ΑΛΓΟΡΙΘΜΩΝ
ΚΕΦΑΛΑΙΟ Το αλφάβητο της ΓΛΩΣΣΑΣ
Εισαγωγή στην Έννοια του Αλγορίθμου και στον Προγραμματισμό
ΚΕΦΑΛΑΙΟ ΑΛΓΟΡΙΘΜΟΙ Αλγόριθμος Η έννοια του αλγορίθμου δεν συνδέεται αποκλειστικά και μόνο με προβλήματα της Πληροφορικής. Πχ συνταγή.
Ανάπτυξη Εφαρμογών σε Προγραμματιστικό Περιβάλλον ΚΕΦΑΛΑΙΟ 2 Βασικές Έννοιες Αλγορίθμων.
ΚΕΦΑΛΑΙΟ 2ο - ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ ΑΛΓΟΡΙΘΜΩΝ
ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ
ΑΛΓΟΡΙΘΜΟΣ ΠΡΟΒΛΗΜΑ ΑΛΓΟΡΙΘΜΟΣ ΛΥΣΗ
ΔΟΜΗ ΑΠΛΗΣ ΕΠΙΛΟΓΗΣ ΑΝ συνθήκη_ισχύει ΤΟΤΕ εντολές ΤΕΛΟΣ_ΑΝ
Από το πρόβλημα στην ανάπτυξη αλγορίθμου Σπάχος Κυριάκος ΠΕ 19 - Πληροφορικής.
Αρχεσ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Η/Υ ΤΑξη Β΄
ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ
Οι διάφορες εκδοχές της
Αναπαράσταση Αλγορίθμου
ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ
Επανάληψη.
ΦΑΣΕΙΣ ΕΠΙΛΥΣΗΣ ΠΡΟΒΛΗΜΑΤΟΣ – ΑΝΑΠΤΥΞΗΣ ΠΡΟΓΡΑΜΜΑΤΟΣ
Στοιχεία Δομημένου Προγραμματισμού
Ανάπτυξη Εφαρμογών σε Προγραμματιστικό Περιβάλλον
ΑΝ Χ<> Α_Μ(Χ) ΤΟΤΕ ΓΡΑΨΕ “Λάθος” ΤΕΛΟΣ_ΑΝ
ΑΛΓΟΡΙΘΜΟΣ.
ENOTHTA 2. ΘΕΜΑΤΑ ΘΕΩΡΗΤΙΚΗΣ ΕΠΙΣΤΗΜΗΣ ΤΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΚΕΦΑΛΑΙΟ 2
ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ
Βασικές έννοιες αλγορίθμων
Αναπαράσταση Αλγορίθμου
Εισαγωγή στις Αρχές της Επιστήμης των Η/Υ
Β.ΕΠΑΛ-Γενικής Παιδείας  ΜΑΘΗΜΑ: Εισαγωγή στης αρχές Επιστήμης των Η/Υ  ΚΕΦΑΛΑΙΟ 4: Γλώσσες Αναπαράστασης Αλγορίθμων  ΕΝΟΤΗΤΑ 4.2: Δομή Ακολουθίας 
οι 3 Δομές Επανάληψης ή αλλιώς οι τρεις σωματοφύλακες…
ΠΛΗΡΟΦΟΡΙΚΗ Γ΄ Γυμνασίου Α΄ Τρίμηνο
Κυριάκου Νικόλαος Πληροφορικής ΠΕ-20
Μεταγράφημα παρουσίασης:

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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