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

Slides:



Advertisements
Παρόμοιες παρουσιάσεις
Βασικές έννοιες αλγορίθμων
Advertisements

Εισαγωγή στους Αλγορίθμους
Πιθανοκρατικοί Αλγόριθμοι
Βρόχος με συνθήκη εισόδου στη C, οδηγούμενος από μετρητή: for
Ενότητα Η Δομή Επανάληψης
Β΄ ΓΕΛ ΕισΑρχΕπ Η/Υ παρ – 2.2.5
Κεφάλαιο 2. Τι είναι αλγόριθμος  Η λέξη αλγόριθμος προέρχεται από μελέτη του Πέρση μαθηματικού Abu Ja’far Mohammed ibn al Khowarizmi  Στα λατινικά ξεκινούσε.
Η αλληλουχία των ενεργειών δεν είναι πάντα μία και μοναδική!!!
Εισαγωγή στις Αρχές της Επιστήμης των Η/Υ» Β΄ τάξης Γενικού Λυκείου
Ασκήσεις.
ΒΡΟΧΟΙ ΜΑΘΗΜΑ 5. ΒΡΟΧΟΙΒΡΟΧΟΙ Ο Βρόχος (loop) αποτελείται από προτάσεις επανάληψης. Οι προτάσεις επανάληψης είναι οι προτάσεις που επαναλαμβάνουν ένα.
Η αλληλουχία των ενεργειών δεν είναι πάντα μία και μοναδική!!!
Β΄ ΓΕΛ ΕισΑρχΕπ Η/Υ παρ – 2.2.5
Η Δομή Επανάληψης Από τη Δομή Επανάληψης Για στην Όσο Η παρουσίαση της εντολής Όσο είναι από την εισήγηση των κ. Σ. Δουκάκη και Π. Τσιωτάκη στο 3ο Συνέδριο.
ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ ΑΛΓΟΡΙΘΜΩΝ
Μεταβλητές – εντολές εκχώρησης- δομή ακολουθίας
ΘΕΜΑΤΙΚΗ ΕΝΟΤΗΤΑ 2: ΘΕΜΑΤΑ ΘΕΩΡΗΤΙΚΗΣ ΕΠΙΣΤΗΜΗΣ Η/Υ
ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΕΝΝΟΙΑ ΤΟΥ ΑΛΓΟΡΙΘΜΟΥ ΚΑΙ ΣΤΟΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ
2-1 Ανάλυση Αλγορίθμων Αλγόριθμος Πεπερασμένο σύνολο εντολών που, όταν εκτελεστούν, επιτυγχάνουν κάποιο επιθυμητό αποτέλεσμα –Δεδομένα εισόδου και εξόδου.
Ενότητα Α.4. Δομημένος Προγραμματισμός
Η αλληλουχία των ενεργειών δεν είναι πάντα μία και μοναδική!!!
ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ Συγγραφείς Α.Βακάλη Η. Γιαννόπουλος Ν. Ιωαννίδης Χ.Κοίλιας Κ. Μάλαμας Ι. Μανωλόπουλος Π. Πολίτης Γ΄ τάξη.
Επανάληψη.
ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ ΑΛΓΟΡΙΘΜΩΝ
ΘΕΜΑΤΙΚΗ ΕΝΟΤΗΤΑ 2: ΘΕΜΑΤΑ ΘΕΩΡΗΤΙΚΗΣ ΕΠΙΣΤΗΜΗΣ Η/Υ
Η Δομή Επανάληψης οι 3 Δομές Επανάληψης ή αλλιώς οι τρεις σωματοφύλακες… Η παρουσίαση της εντολής Μέχρις_ότου είναι από την εισήγηση των κ. Σ. Δουκάκη.
ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ ΑΛΓΟΡΙΘΜΩΝ
ΚΕΦΑΛΑΙΟ Τι είναι αλγόριθμος
ΚΕΦΑΛΑΙΟ Το αλφάβητο της ΓΛΩΣΣΑΣ
ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ
ΔΟΜΗ ΕΠΑΝΑΛΗΨΗΣ ΟΣΟ ΣΥΝΘΗΚΗ ΕΠΑΝΑΛΑΒΕ ΕΝΤΟΛΕΣ ΕΝΤΟΛΕΣΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ.
1 Η ΓΙΑ ΚΑΙ Η ΛΕΙΤΟΥΡΓΙΑ ΤΗΣ Η δομή Για περιέχει 3 τμήματα (εντολές) που εκτελούνται αυτόματα(εσωτερικά στη Για) Για i από 1 μέχρι 100 i ← 1 i
Για μτ από ατ μέχρι ττ [με_βήμα β] εντολές Τέλος_επανάληψης : περιοχή εντολών μτ : η μεταβλητή της οποίας η τιμή θα περάσει από την αρχική.
Ένας εκδοτικός οίκος χρησιμοποιεί 35 διανομείς για τη διακίνηση των βιβλίων του. Στο τέλος κάθε μήνα καταγράφονται οι πωλήσεις που πραγματοποιήθηκαν από.
Ανάπτυξη Εφαρμογών σε Προγραμματιστικό Περιβάλλον ΚΕΦΑΛΑΙΟ 2 Βασικές Έννοιες Αλγορίθμων.
ΚΕΦΑΛΑΙΟ 2ο - ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ ΑΛΓΟΡΙΘΜΩΝ
Δομή επιλογής Πολλές φορές για να λυθεί ένα πρόβλημα πρέπει να ελεγχθεί αν ισχύει κάποια συνθήκη Παράδειγμα 2: Να διαβαστεί ένας αριθμός και να επιστραφεί.
Αντικειμενοστραφής Προγραμματισμός Ι
Δομή Επιλογής Χρησιμοποιείται σε προβλήματα όπου χρειάζεται να ληφθούν κάποιες αποφάσεις με βάση κάποια δεδομένα κριτήρια. Περιλαμβάνει τον έλεγχο κάποιας.
Βρόχος Do … Loop Σκοπός Μαθήματος Χρήση Do… Loop για την εκτέλεση μιας ομάδας εντολών μέχρι να εκπληρωθεί μια συγκεκριμένη συνθήκη.
ΑΛΓΟΡΙΘΜΟΣ ΠΡΟΒΛΗΜΑ ΑΛΓΟΡΙΘΜΟΣ ΛΥΣΗ
ΔΟΜΗ ΑΠΛΗΣ ΕΠΙΛΟΓΗΣ ΑΝ συνθήκη_ισχύει ΤΟΤΕ εντολές ΤΕΛΟΣ_ΑΝ
ΔΟΜΗ ΓΙΑ (1) Για i από .... μέχρι .... Αν ………….… τότε
Αρχεσ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Η/Υ ΤΑξη Β΄
ΔΟΜΗ ΕΠΑΝΑΛΗΨΗΣ «ΓΙΑ» Για μτ από ατ μέχρι ττ [με_βήμα β] εντολές Τέλος_επανάληψης : περιοχή εντολών μτ : η μεταβλητή της.
Οι διάφορες εκδοχές της
ΔΟΜΗ ΕΠΑΝΑΛΗΨΗΣ: η εντολή ΓΙΑ
ΓΕΜΙΣΜΑ ΜΟΝΟΔΙΑΣΤΑΤΟΥ ΠΙΝΑΚΑ (Άσκηση 1)
ΜΟΡΦΕΣ ΔΟΜΩΝ ΕΠΑΝΑΛΗΨΗΣ
Αν συνθήκη_ισχύει τότε εντολές Τέλος_Αν
ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ (Α.Ε.Π.Π.)
ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ
Επανάληψη.
Δομημένος Προγραμματισμός - Κεφάλαιο 4 - Ανάπτυξη αλγορίθμων
8.2 Η Δομή Επανάληψης Μέχρις_ότου
Ανάπτυξη Εφαρμογών σε Προγραμματιστικό Περιβάλλον
ΑΝ Χ<> Α_Μ(Χ) ΤΟΤΕ ΓΡΑΨΕ “Λάθος” ΤΕΛΟΣ_ΑΝ
Δομή Επιλογής Μάθημα 4ο Ανάπτυξη Εφαρμογών σε Προγραμματιστικό Περιβάλλον Τάξη Γ Οικονομίας & Πληροφορικής Θετικών Σπουδών 2ο Γενικό Λύκειο Αλιβερίου |
Μανασσάκης Βασίλης Καθηγητής Πληροφορικής
ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ
ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ ΑΛΓΟΡΙΘΜΩΝ
Εντολές και δομές αλγορίθμου
Δομή Επιλογής , 8.1.
Ανάπτυξη Εφαρμογών σε Προγραμματιστικό Περιβάλλον ΑΕΠΠ
Βασικές έννοιες αλγορίθμων
Β.ΕΠΑΛ-Γενικής Παιδείας  ΜΑΘΗΜΑ: Εισαγωγή στης αρχές Επιστήμης των Η/Υ  ΚΕΦΑΛΑΙΟ 4: Γλώσσες Αναπαράστασης Αλγορίθμων  ΕΝΟΤΗΤΑ 4.2: Δομή Ακολουθίας 
Από τη Δομή Επανάληψης Για στην Όσο
οι 3 Δομές Επανάληψης ή αλλιώς οι τρεις σωματοφύλακες…
Κυριάκου Νικόλαος Πληροφορικής ΠΕ-20
Από τη Δομή Ακολουθίας στις Δομές Επανάληψης
Μεταγράφημα παρουσίασης:

Ανάπτυξη Εφαρμογών σε Προγραμματιστικό Περιβάλλον 2.4.5 – 8.2 Δομή Επανάληψης

Δομές Επανάληψης Εμφάνιση ενός μηνύματος πολλές φορές Οι δομές επανάληψης χρησιμοποιούνται στις περιπτώσεις όπου μια συγκεκριμένη ακολουθία εντολών πρέπει να εκτελεστεί πολλές φορές. Παράδειγμα Εμφάνιση ενός μηνύματος πολλές φορές Εισαγωγή πολλών στοιχείων Εισαγωγή δεδομένων που πληρούν κάποια κριτήρια Έλεγχος εισόδου Επαναλαμβανόμενες πράξεις σε αριθμητικές ακολουθίες ΠΡΟΣΟΧΗ! Οι δομές επανάληψης πρέπει να ολοκληρώνονται (Αλγοριθμικό κριτήριο περατότητας)

Χωρίς δομές επανάληψης Δομές Επανάληψης Χωρίς δομές επανάληψης Εμφάνισε 1 Εμφάνισε 2 Εμφάνισε 3 Εμφάνισε 4 …... Εμφάνισε 15 Άθροισμα <- 0 Διάβασε Βαθμός1 Άθροισμα <- Άθροισμα+Βαθμός1 Διάβασε Βαθμός2 Άθροισμα <- Άθροισμα+Βαθμός2 ….......... Διάβασε Βαθμός6 Άθροισμα <- Άθροισμα+Βαθμός6 ΜΟ <- Άθροισμα/6 Θετικοί <- 0 Διάβασε Αριθμός1 Αν Αριθμός1 > 0 τότε Θετικοί <- Θετικοί +1 Τέλος_Αν ….......... Διάβασε Αριθμός7 Αν Αριθμός7 > 0 τότε Θετικοί <- Θετικοί +1 Τέλος_Αν Εμφάνισε Θετικοί Με δομές επανάληψης Άθροισμα <- 0 Χ <- 1 Αρχή_επανάληψης Διάβασε Βαθμός Άθροισμα <- Άθροισμα+Βαθμός Μέχρις_ότου Χ>6 ΜΟ <- Άθροισμα/6 Θετικοί <- 0 Για Χ από 1 μέχρι 7 Διάβασε Αριθμός Αν Αριθμός > 0 τότε Θετικοί <- Θετικοί +1 Τέλος_Επανάληψης Εμφάνισε Θετικοί Χ <- 1 Όσο Χ<=15 επανάλαβε Εμφάνισε Χ Χ <- Χ+1 Τέλος_επανάληψης

Δομές Επανάληψης Τι κερδίζουμε; Χρόνο Τι θα κάναμε αν έπρεπε να υπολογίσουμε τον μέσο όρο 1000 βαθμών; Μνήμη Αντί για 6 θέσεις μνήμης (παράδειγμα ΜΟ) χρησιμοπποιούμε μία Απλότητα Εύκολα αναγνώσιμοι και επεκτάσιμοι αλγόριθμοι Εκφραστικότητα Εκφράζουμε πιο σωστά την μέθοδο επίλυσης του προβλήματος

Δομές Επανάληψης Όλες οι δομές επανάληψης περιλαμβάνουν: Μια ακολουθία εντολών που εκτελείται. Σημείωση: Η ακολουθία αυτή μπορεί να περιλαμβάνει δομές επιλογής και επανάληψης Μια συνθήκη που ελέγχει (στην αρχή ή στο τέλος) εάν η επανάληψη πρέπει να ολοκληρωθεί ή να τερματιστεί Εντολές μέσα στον βρόχο που αλλάζουν την τιμή της μεταβλητής (-ών) που ελέγχεται (-ονται) στη συνθήκη, αλλιώς η επανάληψη θα εκτελείται επ' άπειρον (ατέρμων βρόχος), παραβιάζοντας το κριτήριο της περατότητας και προκάλωντας το ”κόλλημα” της εφαρμογής (ή και της μηχανής στην οποία εκτελείται)!

Υπάρχουν 3 είδη δομών επανάληψης Δομές Επανάληψης Υπάρχουν 3 είδη δομών επανάληψης Όσο μια συνθήκη είναι αληθής Μέχρις ότου μια συνθήκη να γίνει αληθής Για συγκεκριμένο αριθμό επαναλήψεων

ΟΣΟ … ΕΠΑΝΑΛΑΒΕ

ΟΣΟ … ΕΠΑΝΑΛΑΒΕ Είναι η γενικότερη δομή επανάληψης, και με αυτήν μπορούν να εκφραστούν όλες οι επαναλήψεις, και ΣΙΓΟΥΡΑ αυτές των οποίων δεν γνωρίζουμε τον αριθμό, ούτε μπορούμε να τον υπολογίσουμε πριν την εκτέλεση του προγράμματος! Η συνθήκη αποτιμάται στην αρχή! Αν δεν είναι αληθής οι εντολές του βρόχου δεν θα εκτελεστούν ΠΟΤΕ! Σε αρκετές περιπτώσεις η συνθήκη που ελέγχεται δεν δίνεται από το πρόβλημα, ούτε είναι προφανής από την διατύπωσή του. Ο προγραμματιστής πρέπει να διαμορφώσει την συνθήκη ώστε να είναι λογικά σωστή για το πρόβλημα, χρησιμοποιώντας μια τιμή φρουρό!

ΟΣΟ … ΕΠΑΝΑΛΑΒΕ Έκφραση που μεταβάλλει την μεταβλητή που ελέγχεται στην συνθήκη. Χωρίς την έκφραση αυτή έχουμε ατέρμων βρόχο Ψευδής Ψευδής

ΟΣΟ … ΕΠΑΝΑΛΑΒΕ Υποθέτουμε πως οι αριθμοί που θα διαβαστούν είναι θετικοί. Αν αυτό δεν συμβαίνει ορίζουμε μια τιμή φρουρό, η οποία δεν μπορεί να ανήκει στις εισαγόμενες τιμές. Πχ 99999. Η συνθήκη γίνεται Όσο x<> 99999 επανάλαβε Αν η πρώτη τιμή που θα δωθεί είναι 0 ή αρνητικός οι εντολές της δομής επανάληψης δεν εκτελούνται Ψευδής Ψευδής Χωρίς αυτήν την εντολή έχουμε ατέρμων βρόχο!

ΟΣΟ … ΕΠΑΝΑΛΑΒΕ !!!ΠΡΟΣΟΧΗ!!! Οι μεταβλητές Πλήθος και Άθροισμα πρέπει να αρχικοποιηθούν, αφού χρησιμοποιούνται στο δεξί μέρος εντολής εκχώρησης. Η χρήση τους χωρίς να έχουν αρχική τιμή είναι συχνό ΛΑΘΟΣ Ο έλεγχος είναι απαραίτητος, για να ικανοποιεί ο αλγόριθμος το κριτήριο της καθοριστικότητας Ψευδής Ψευδής

ΑΡΧΗ_ΕΠΑΝΑΛΗΨΗΣ ... ΜΕΧΡΙΣ_ΟΤΟΥ Ψευδής Ψευδής

ΑΡΧΗ_ΕΠΑΝΑΛΗΨΗΣ ... ΜΕΧΡΙΣ_ΟΤΟΥ H δομή αυτή χρησιμοποιείται επίσης όταν δεν είναι γνωστός ο αριθμός των επαναλήψεων Οι εντολές επαναλαμβάνονται όσο η συνθήκη είναι ΨΕΥΔΗΣ! Συχνά η ίδια διαδικασία μπορεί να γραφτεί εξ' ίσου σωστά με την εντολή ΟΣΟ … ΕΠΑΝΑΛΑΒΕ. Σε περιπτώσεις που οι εντολές πρέπει να εκτελεστούν τουλάχιστον μια φορά η χρήση της ΜΕΧΡΙΣ_ΟΤΟΥ οδηγεί σε απλούστερα και πιο ευκολονόητα προγράμματα Χαρακτηριστικό παράδειγμα είναι ο έλεγχος αποδεκτών τιμών (ζητούμενο σε πολλές ασκήσεις) και η επιλογή από προκαθορισμένες απαντήσεις! Ψευδής Ψευδής

ΑΡΧΗ_ΕΠΑΝΑΛΗΨΗΣ ... ΜΕΧΡΙΣ_ΟΤΟΥ ΒΑΣΙΚΟ ΠΑΡΑΔΕΙΓΜΑ! Έλεγχος δεδομένων Τερματισμός με συγκεκριμένη τιμή εισόδου Ψευδής Ψευδής

ΓΙΑ...ΑΠΟ...ΜΕΧΡΙ (...ΜΕ_ΒΗΜΑ) μεταβλητή <- μεταβλητή+ τιμή3 μεταβλητή <- τιμή1 μεταβλητή>τιμή2 εντολές ΨΕΥΔΗΣ ΑΛΗΘΗΣ Ψευδής Ψευδής

ΓΙΑ...ΑΠΟ...ΜΕΧΡΙ (...ΜΕ_ΒΗΜΑ) Χρησιμοποιείται όταν γνωρίζουμε πόσες φορές θα εκτελεστεί η επανάληψη Όταν το βήμα της μεταβολής είναι 1, δεν σημειώνεται! Το βήμα της επανάληψης μπορεί να είναι αρνητικός ή και πραγματικός αριθμός ! Δεν μπορεί όμως να είναι 0 γιατί τότε καταλήγουμε σε ατέρμων βρόχο Ψευδής Ψευδής

ΓΙΑ...ΑΠΟ...ΜΕΧΡΙ (...ΜΕ_ΒΗΜΑ) Ψευδής Ψευδής

ΓΙΑ...ΑΠΟ...ΜΕΧΡΙ (...ΜΕ_ΒΗΜΑ) Ψευδής Ποιό από τα δύο θα εκτελεστεί πιο γρήγορα; Ψευδής

ΓΙΑ...ΑΠΟ...ΜΕΧΡΙ (...ΜΕ_ΒΗΜΑ) Πόσες φορές θα εκτελεστούν οι παρακάτω επαναλήψεις; i) Για ι από 10 μέχρι 20 11 iι) Για ι από 10 μέχρι 10 1 iii) Για ι από 10 μέχρι 10 iv) α <- 10 β <- 21 Για ι από α μέχρι β 12 v) Για ι από -10 μέχρι 10 21 Ψευδής Ψευδής vi) Για ι από -10 μέχρι -20

Αντιστοιχία Στις περισσότερες περιπτώσεις μπορούν να χρησιμοποιηθούν και οι 3 δομές επανάληψης, και συχνό ζητούμενο είναι η μετατροπή από την μια μορφή στην άλλη! Παράδειγμα: Εμφάνιση των αριθμών 1 ως 100 Χρησιμοποιείται σε όλες τις περιπτώσεις συνθηκών (αριθμητικών και μη), απλών και σύνθετων Ισχύουν τα ίδια με την Όσο, με την διαφορά ότι οι εντολές εκτελούνται τουλάχιστον μια φορά Χρησιμοποιείται μόνο σε γνωστό πλήθος επαναλήψεων Ψευδής Ψευδής