ΚΕΦΑΛΑΙΟ 11
ΕΝΤΟΛΕΣ ΕΠΑΝΑΛΗΨΗΣ
ΕΝΤΟΛΗ REPEAT
Ο λόγος που χρησιμοποιούμε βρόγχους είναι όταν θέλουμε να επαναλάβουμε ένα κομμάτι κώδικα πολλές φορές
Ο Βρόγχος
Repeat…Until
Συντάσσεται έτσι:
Repeat
«Κώδικας για επανάληψη»;
Until «Συνθήκη»;
|
x:=0; Repeat
x:=x+1; ……..
Until x>=10 |
Αρχική τιμή του x ίση με 0
Επανέλαβε μέχρι το x να γίνει μεγαλύτερο ή ίσο από 10
Σε κάθε επανάληψη το x αυξάνει κατά 1
Θα εκτελεστούν 10 επαναλήψεις |
ΠΡΟΣΟΧΗ:
Στην While και την Repeat-Until υπάρχει “πάντα” μια μεταβλητή (στην περίπτωση του παραδείγματος η x) η οποία πρέπει έξω από το loop να αποκτήσει αρχική τιμή (στο παράδειγμα x:=0;) και μέσα στο Loop να μεταβάλλεται η τιμή της (x:=x+1;).
Παράδειγμα
Τυπώνει τους αριθμούς από το 0 ως το 9
Program P1;
var a :integer;
begin
a := 0;
Repeat
writeln(a);
a := a + 1;
Until (a > 9);
End.
Πρώτα δίνουμε αρχική τιμή στη μεταβλητή a :=0;.
Μέχρι το a να γίνει μεγαλύτερο από 9
τυπώνει το a και στη συνέχεια προσθέτει 1. Σε κάθε
επανάλυψη του βρόχου το a αυξάνει κατά 1.
Άρα το a θα παίρνει τις τιμές 0,1,2,3,4,5,6,7,8,9.
Οταν το a γίνει ίσο με 10 (όπου a>9) θα τερματιστεί ο βρόγχος επειδή ΔΕΝ θα ισχύει η συνθήκη και στην συνέχεια θα τερματιστεί το πρόγραμμα.
Διαφορές
While
και
Repeat-Until
Η While
έχει begin και end; ενώ η
Repeat-Until δεν
έχει.
Η While
πρώτα ελέγχει και μετά εκτελεί ενώ η Repeat-Until
πρώτα εκτελεί και μετά ελέγχει.
Στην While
εκτελούνται οι εντολές που βρίσκονται μέσα της όσο η
συνθήκη είναι αλήθεια ενώ στην Repeat-Until
εκτελούνται οι εντολές που βρίσκονται μέσα της μέχρι η συνθήκη να
γίνει αλήθεια.
ΛΟΓΙΚΟ ΔΙΑΓΡΑΜΜΑ
