ΜΟΡΦΕΣ ΔΟΜΩΝ ΕΠΑΝΑΛΗΨΗΣ

Slides:



Advertisements
Παρόμοιες παρουσιάσεις
Επιμέλεια: Τίκβα Χριστίνα
Advertisements

Κεφάλαιο Τμηματικός προγραμματισμός
Γεωργαλλίδης Δημήτρης Καθηγητής Πληροφορικής
Δομές Διακλάδωσης Μην ελπίζεις ότι θα ξεφύγεις αν κάνεις κάποιο κακό. Γιατί κι αν ξεφύγεις απ’ τη προσοχή των άλλων, θα υποπέσεις στην αντίληψη της συνείδησής.
Τι είναι ο υπολογιστής; Τι είναι ο προγραμματισμός
Η εντολή Δείξε είναι μια εντολή εξόδου και χρησιμοποιείται για:
Εκτέλεση Αλγορίθμων σε ψευδογλώσσα
Πώς βρίσκουμε το πλήθοςτων επαναλήψεων μιας Δομής Επανάληψης με βήμα διάφορο του 1
Ενότητα Η Δομή Επανάληψης
Κεφάλαιο 2 : Βασικές Έννοιες Αλγορίθμων 2.1 Τι είναι αλγόριθμος
Εισαγωγή στις Αρχές της Επιστήμης των Η/Υ» Β΄ τάξης Γενικού Λυκείου
Ασκήσεις.
Η αλληλουχία των ενεργειών δεν είναι πάντα μία και μοναδική!!!
Η Δομή Επανάληψης Από τη Δομή Επανάληψης Για στην Όσο Η παρουσίαση της εντολής Όσο είναι από την εισήγηση των κ. Σ. Δουκάκη και Π. Τσιωτάκη στο 3ο Συνέδριο.
Μεταβλητές – εντολές εκχώρησης- δομή ακολουθίας
ΠΙΝΑΚΑΣ ΕΝΤΟΛΩΝ ΨΕΥΔΟΚΩΔΙΚΑ
ΘΕΜΑΤΙΚΗ ΕΝΟΤΗΤΑ 2: ΘΕΜΑΤΑ ΘΕΩΡΗΤΙΚΗΣ ΕΠΙΣΤΗΜΗΣ Η/Υ
Γεωργαλλίδης Δημήτρης Καθηγητής Πληροφορικής
ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ Συγγραφείς Α.Βακάλη Η. Γιαννόπουλος Ν. Ιωαννίδης Χ.Κοίλιας Κ. Μάλαμας Ι. Μανωλόπουλος Π. Πολίτης Γ΄ τάξη.
Δομή επανάληψης Η δομή επανάληψης είναι μια ολοκληρωμένη πρόταση η οποία περικλείει μια συνθήκη και μια ομάδα εντολών, οι οποίες εκτελούνται, όσο ικανοποιείται.
Επανάληψη.
Δομή επιλογής Η δομή επιλογής είναι μια ολοκληρωμένη πρόταση η οποία περικλείει μια συνθήκη και δύο ομάδες εντολών, από τις οποίες θα εκτελεστούν, η μεν.
Η Δομή Επανάληψης οι 3 Δομές Επανάληψης ή αλλιώς οι τρεις σωματοφύλακες… Η παρουσίαση της εντολής Μέχρις_ότου είναι από την εισήγηση των κ. Σ. Δουκάκη.
Κεφάλαιο 10 – Υποπρογράμματα
Γλώσσα Προγραμματισμού LOGO
ΗΥ-340 – Γλώσσες και Μεταφραστές Φροντιστήριο Παραγωγή τελικού κώδικα.
Spring 2007 Γ. Γεωργαλής, Σ. Δουμπουλάκης, Μ. Ζηδιανάκης, Θ. Μπουρδένας 1 ΗΥ-340 Γλώσσες και Μεταφραστές Φροντιστήριο Virtual Machine.
ΑΣΚΗΣΕΙΣ ΣΤΟ ΜΑΘΗΜΑ «ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ (Α.Ε.Π.Π.)» ΤΕΧΝΟΛΟΓΙΚΗ ΚΑΤΕΥΘΥΝΣΗ Γ’ ΤΑΞΗΣ ΓΕΝΙΚΟΥ ΛΥΚΕΙΟΥ ΙΟΡΔΑΝΗΣ ΣΑΒΒΟΥΛΙΔΗΣ.
ΔΟΜΗ ΕΠΑΝΑΛΗΨΗΣ ΟΣΟ ΣΥΝΘΗΚΗ ΕΠΑΝΑΛΑΒΕ ΕΝΤΟΛΕΣ ΕΝΤΟΛΕΣΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ.
1 Η ΓΙΑ ΚΑΙ Η ΛΕΙΤΟΥΡΓΙΑ ΤΗΣ Η δομή Για περιέχει 3 τμήματα (εντολές) που εκτελούνται αυτόματα(εσωτερικά στη Για) Για i από 1 μέχρι 100 i ← 1 i
Για μτ από ατ μέχρι ττ [με_βήμα β] εντολές Τέλος_επανάληψης : περιοχή εντολών μτ : η μεταβλητή της οποίας η τιμή θα περάσει από την αρχική.
Ένας εκδοτικός οίκος χρησιμοποιεί 35 διανομείς για τη διακίνηση των βιβλίων του. Στο τέλος κάθε μήνα καταγράφονται οι πωλήσεις που πραγματοποιήθηκαν από.
Ανάπτυξη Εφαρμογών σε Προγραμματιστικό Περιβάλλον
Δομή επιλογής Πολλές φορές για να λυθεί ένα πρόβλημα πρέπει να ελεγχθεί αν ισχύει κάποια συνθήκη Παράδειγμα 2: Να διαβαστεί ένας αριθμός και να επιστραφεί.
Δομή Επιλογής Χρησιμοποιείται σε προβλήματα όπου χρειάζεται να ληφθούν κάποιες αποφάσεις με βάση κάποια δεδομένα κριτήρια. Περιλαμβάνει τον έλεγχο κάποιας.
Βρόχος Do … Loop Σκοπός Μαθήματος Χρήση Do… Loop για την εκτέλεση μιας ομάδας εντολών μέχρι να εκπληρωθεί μια συγκεκριμένη συνθήκη.
ΑΛΓΟΡΙΘΜΟΣ ΠΡΟΒΛΗΜΑ ΑΛΓΟΡΙΘΜΟΣ ΛΥΣΗ
ΔΟΜΗ ΑΠΛΗΣ ΕΠΙΛΟΓΗΣ ΑΝ συνθήκη_ισχύει ΤΟΤΕ εντολές ΤΕΛΟΣ_ΑΝ
ΔΟΜΗ ΓΙΑ (1) Για i από .... μέχρι .... Αν ………….… τότε
Αρχεσ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Η/Υ ΤΑξη Β΄
Επιλέγοντας… Αν θέλουμε να γράψουμε έναν αλγόριθμο που να τον εκτελεί ένα μικρό παιδί, ώστε να διασχίσει με ασφάλεια το δρόμο, πρέπει να συμπεριλάβουμε.
ΔΟΜΗ ΕΠΑΝΑΛΗΨΗΣ «ΓΙΑ» Για μτ από ατ μέχρι ττ [με_βήμα β] εντολές Τέλος_επανάληψης : περιοχή εντολών μτ : η μεταβλητή της.
Οι διάφορες εκδοχές της
ΔΟΜΗ ΕΠΑΝΑΛΗΨΗΣ: η εντολή ΓΙΑ
ΓΕΜΙΣΜΑ ΜΟΝΟΔΙΑΣΤΑΤΟΥ ΠΙΝΑΚΑ (Άσκηση 1)
Αν συνθήκη_ισχύει τότε εντολές Τέλος_Αν
ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ (Α.Ε.Π.Π.)
ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ
Μανασσάκης Βασίλης Καθηγητής Πληροφορικής
Επανάληψη.
Δομημένος Προγραμματισμός - Κεφάλαιο 4 - Ανάπτυξη αλγορίθμων
8.2 Η Δομή Επανάληψης Μέχρις_ότου
Δισδιάστατοι Πίνακες 3 7 … i γ ρ α μ ή j - στήλη 1 2 M N
ΑΝ Χ<> Α_Μ(Χ) ΤΟΤΕ ΓΡΑΨΕ “Λάθος” ΤΕΛΟΣ_ΑΝ
Δομή Επιλογής Μάθημα 4ο Ανάπτυξη Εφαρμογών σε Προγραμματιστικό Περιβάλλον Τάξη Γ Οικονομίας & Πληροφορικής Θετικών Σπουδών 2ο Γενικό Λύκειο Αλιβερίου |
ΑΛΓΟΡΙΘΜΟΣ.
ΒΙΒΛΙΟ ΠΛΗΡΟΦΟΡΙΚΗΣ Σελίδες 2ο Κεφάλαιο - Παράγραφο 2.7 ΔΟΜΗ ΕΠΙΛΟΓΗΣ
Μανασσάκης Βασίλης Καθηγητής Πληροφορικής
ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ
Εντολές και δομές αλγορίθμου
Δομή Επιλογής , 8.1.
Ανάπτυξη Εφαρμογών σε Προγραμματιστικό Περιβάλλον ΑΕΠΠ
Από τη Δομή Επανάληψης Για στην Όσο
οι 3 Δομές Επανάληψης ή αλλιώς οι τρεις σωματοφύλακες…
Σημειώσεις : Μιχάλης Φίλης
Λυμένα θέματα πανελλαδικών εξετάσεων με υποπρογράμματα
ΚΑΘΟΔΟΣ ΤΩΝ ΠΕΛΟΠΟΝΝΗΣΟΣ ΕΙΛΩΤΕΣ-ΠΕΡΙΟΙΚΟΙ ΓΕΩΜΕΤΡΙΚΑ ΧΡΟΝΙΑ
Κυριάκου Νικόλαος Πληροφορικής ΠΕ-20
Πληροφορική Γ’ Γυμνασίου
Από τη Δομή Ακολουθίας στις Δομές Επανάληψης
Μεταγράφημα παρουσίασης:

ΜΟΡΦΕΣ ΔΟΜΩΝ ΕΠΑΝΑΛΗΨΗΣ ΟΣΟ μια_συνθήκη_ισχύει ΕΠΑΝΑΛΑΒΕ εντολές ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ Α ΓΙΑ μεταβλητή ΑΠΟ Χ ΜΕΧΡΙ Υ [ΜΕ_ΒΗΜΑ Ζ] εντολές ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ Β ΑΡΧΗ_ΕΠΑΝΑΛΗΨΗΣ εντολές ΜΕΧΡΙΣ_ΟΤΟΥ μια_συνθήκη_ισχύσει Γ

ΑΝΤΙΣΤΟΙΧΙΑ ΔΟΜΩΝ ΕΠΑΝΑΛΗΨΗΣ Στις περισσότερες περιπτώσεις, μπορούν να χρησιμοποιηθούν και οι τρεις δομές επανάληψης. Π.χ. : Να γραφεί τμήμα προγράμματος που να εμφανίζει τους αριθμούς 1 - 100 i  1 ΟΣΟ i <= 100 ΕΠΑΝΑΛΑΒΕ ΓΡΑΨΕ i i  i + 1 ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ i  1 ΑΡΧΗ_ΕΠΑΝΑΛΗΨΗΣ ΓΡΑΨΕ i i  i + 1 ΜΕΧΡΙΣ_ΟΤΟΥ i > 100 ΓΙΑ i ΑΠΌ 1 ΜΕΧΡΙ 100 ΓΡΑΨΕ i ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ ΓΕΝΙΚΑ Χρησιμοποιείται μόνο σε γνωστό πλήθος επαναλήψεων. ΓΕΝΙΚΑ Χρησιμοποιείται σε όλες τις περιπτώσεις ΓΕΝΙΚΑ Ισχύουν τα ίδια με την ΟΣΟ, με τη διαφορά ότι οι εντολές επανάληψης εκτελούνται σίγουρα μια φορά.

ΜΕΤΑΤΡΟΠΗ ΑΠΟ ΔΟΜΗ ΓΙΑ ΣΕ ΟΣΟ ΜΕΤΑΤΡΟΠΗ ΑΠΟ ΔΟΜΗ ΓΙΑ ΣΕ ΟΣΟ Σ ← 0 ΓIA i ΑΠΟ 1 ΜΕΧΡΙ 100 ΔΙΑΒΑΣΕ Χ Σ ← Σ + Χ ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ Σ ← 0 i ← 1 ΟΣΟ i <=100 ΕΠΑΝΑΛΑΒΕ ΔΙΑΒΑΣΕ Χ Σ ← Σ + Χ i ← i + 1 ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ

ΜΕΤΑΤΡΟΠΗ ΑΠΟ ΔΟΜΗ ΟΣΟ ΣΕ ΓΙΑ (1) ΜΕΤΑΤΡΟΠΗ ΑΠΟ ΔΟΜΗ ΟΣΟ ΣΕ ΓΙΑ (1) i ← 2 ΟΣΟ i <=10 ΕΠΑΝΑΛΑΒΕ ΔΙΑΒΑΣΕ Α ΓΡΑΨΕ Α i ← i + 2 ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ ΓIA i ΑΠΟ 2 ΜΕΧΡΙ 10 ΜΕ_ΒΗΜΑ 2 ΔΙΑΒΑΣΕ Α ΓΡΑΨΕ Α ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ

ΜΕΤΑΤΡΟΠΗ ΑΠΟ ΔΟΜΗ ΟΣΟ ΣΕ ΓΙΑ (2) ΜΕΤΑΤΡΟΠΗ ΑΠΟ ΔΟΜΗ ΟΣΟ ΣΕ ΓΙΑ (2) i ← 100 ΟΣΟ i >=10 ΕΠΑΝΑΛΑΒΕ ΓΡΑΨΕ i i ← i - 2 ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ ΓIA i ΑΠΟ 100 ΜΕΧΡΙ 10 ΜΕ_ΒΗΜΑ -2 ΓΡΑΨΕ i ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ

ΜΕΤΑΤΡΟΠΗ ΑΠΟ ΔΟΜΗ ΟΣΟ ΣΕ ΓΙΑ (3) ΜΕΤΑΤΡΟΠΗ ΑΠΟ ΔΟΜΗ ΟΣΟ ΣΕ ΓΙΑ (3) x ← 8 ΟΣΟ x > 0 ΕΠΑΝΑΛΑΒΕ ΓΡΑΨΕ x x ← x - 2 ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ ΓIA x ΑΠΟ 8 ΜΕΧΡΙ 2 ΜΕ_ΒΗΜΑ -2 ΓΡΑΨΕ x ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ Όταν στη συνθήκη του ΟΣΟ δεν έχουμε = θέλει προσοχή στην τελική τιμή του ΓΙΑ, ώστε και να τυπωθούν σωστά οι τιμές του x αλλά και η τελική τιμή του x να είναι ίδια και στις 2 περιπτώσεις.

ΜΕΤΑΤΡΟΠΗ ΑΠΟ ΔΟΜΗ ΜΕΧΡΙΣ_ΟΤΟΥ ΣΕ ΟΣΟ Σ ← 0 Μ ← 1000 ΑΡΧΗ_ΕΠΑΝΑΛΗΨΗΣ ΔΙΑΒΑΣΕ αρ Σ ← Σ + αρ M ← M + 1 ΜΕΧΡΙΣ_ΟΤΟΥ (Σ < -100) ή ( Μ = 2008) ΓΡΑΨΕ Σ, Μ Σ ← 0 Μ ← 1000 ΟΣΟ Σ >= -100 ΚΑΙ Μ <> 2008 ΕΠΑΝΑΛΑΒΕ ΔΙΑΒΑΣΕ αρ Σ ← Σ + αρ M ← M + 1 ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ

ΜΕΤΑΤΡΟΠΗ ΑΠΟ ΔΟΜΗ ΟΣΟ ΣΕ ΜΕΧΡΙΣ_ΟΤΟΥ ΔΙΑΒΑΣΕ x ΟΣΟ x< >0 ΕΠΑΝΑΛΑΒΕ y ← x ^ 2 ΓΡΑΨΕ y ΔΙΑΒΑΣΕ x ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ ΔΙΑΒΑΣΕ x ΑΡΧΗ_ΕΠΑΝΑΛΗΨΗΣ ΑΝ x<>0 ΤΟΤΕ y ← x ^ 2 ΓΡΑΨΕ y ΔΙΑΒΑΣΕ x ΤΕΛΟΣ_ΑΝ ΜΕΧΡΙΣ_ΟΤΟΥ x = 0

ΜΕΤΑΤΡΟΠΗ ΑΠΟ ΔΟΜΗ ΜΕΧΡΙΣ_ΟΤΟΥ ΣΕ ΟΣΟ ΑΡΧΗ_ΕΠΑΝΑΛΗΨΗΣ ΔΙΑΒΑΣΕ x y ← x ^ 2 ΓΡΑΨΕ y ΜΕΧΡΙΣ_ΟΤΟΥ x = 0 ΔΙΑΒΑΣΕ x y ← x ^ 2 ΓΡΑΨΕ y ΟΣΟ x <> 0 ΕΠΑΝΑΛΑΒΕ ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ Επειδή η ΜΕΧΡΙΣ_ΟΤΟΥ εκτελεί τουλάχιστον μια φορά όλες τις εντολές της, γι' αυτό όταν την μετατρέπουμε στην ΟΣΟ πρέπει όλες τις εντολές της να τις γράψουμε μια φορά πριν την ΟΣΟ και άλλη μια φορά μέσα σ' αυτήν.

ΜΕΤΑΤΡΟΠΗ ΑΠΟ ΔΟΜΗ ΓΙΑ ΣΕ ΜΕΧΡΙΣ_ΟΤΟΥ (1) ΜΕΤΑΤΡΟΠΗ ΑΠΟ ΔΟΜΗ ΓΙΑ ΣΕ ΜΕΧΡΙΣ_ΟΤΟΥ (1) ΓΙΑ x ΑΠΟ 1 ΜΕΧΡΙ 10 ΓΡΑΨΕ x ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ x ← 1 ΑΡΧΗ_ΕΠΑΝΑΛΗΨΗΣ ΓΡΑΨΕ x x ← x + 1 ΜΕΧΡΙΣ_ΟΤΟΥ x > 10

ΜΕΤΑΤΡΟΠΗ ΑΠΟ ΔΟΜΗ ΓΙΑ ΣΕ ΜΕΧΡΙΣ_ΟΤΟΥ (2) ΜΕΤΑΤΡΟΠΗ ΑΠΟ ΔΟΜΗ ΓΙΑ ΣΕ ΜΕΧΡΙΣ_ΟΤΟΥ (2) ΓΙΑ x ΑΠΟ 1 ΜΕΧΡΙ κ ΓΡΑΨΕ x ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ x ← 1 ΑΝ x <= κ TOTE ΑΡΧΗ_ΕΠΑΝΑΛΗΨΗΣ ΓΡΑΨΕ x x ← x + 1 ΜΕΧΡΙΣ_ΟΤΟΥ x > κ ΤΕΛΟΣ_ΑΝ Προφανώς αν το κ είναι μικρότερο του 1, η δομή ΓΙΑ δεν θα εκτελεστεί καμία φορά , γι’ αυτό προστέθηκε η δομή επιλογής για να αποφύγουμε την εκτέλεση της ΜΕΧΡΙΣ_ΟΤΟΥ.

ΜΕΤΑΤΡΟΠΗ ΑΠΟ ΔΟΜΗ ΜΕΧΡΙΣ_ΟΤΟΥ ΣΕ ΓΙΑ (1) ΜΕΤΑΤΡΟΠΗ ΑΠΟ ΔΟΜΗ ΜΕΧΡΙΣ_ΟΤΟΥ ΣΕ ΓΙΑ (1) X  A ΑΡΧΗ_ΕΠΑΝΑΛΗΨΗΣ X  X + 2 ΓΡΑΨΕ X ΜΕΧΡΙΣ_ΟΤΟΥ X >= M ΓIA Χ ΑΠΟ Α ΜΕΧΡΙ Μ-1 ΜΕ_ΒΗΜΑ 2 ΓΡΑΨΕ X + 2 ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ

ΜΕΤΑΤΡΟΠΗ ΑΠΟ ΔΟΜΗ ΜΕΧΡΙΣ_ΟΤΟΥ ΣΕ ΓΙΑ (2) ΜΕΤΑΤΡΟΠΗ ΑΠΟ ΔΟΜΗ ΜΕΧΡΙΣ_ΟΤΟΥ ΣΕ ΓΙΑ (2) AN x > 1 TOTE y  x ΑΡΧΗ_ΕΠΑΝΑΛΗΨΗΣ y  y - 2 ΓΡΑΨΕ y ΜΕΧΡΙΣ_ΟΤΟΥ y <= 0 ΤΕΛΟΣ_ΑΝ AN x > 1 TOTE ΓIA y ΑΠΟ x ΜΕΧΡΙ 1 ΜΕ_ΒΗΜΑ -2 ΓΡΑΨΕ y-2 ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ ΤΕΛΟΣ_ΑΝ