|
|
Pętla repeat - until
PROGRAM petla1;
VAR
i: integer;
BEGIN
repeat //1
write ('Wpisz liczbę 100: ');
readln (i);
until i = 100; //2
readln;
END.
|
Pętla (1) "zmusza" komputer do powtarzania wszystkiego co znajduje się
pomiędzy słowami repeat - until aż do tej pory, gdy zostanie spełniony warunek
(2).

Struktura kontroli (inna nazwa pętli) podobnie jak if - then ma za zadanie
kontrolowanie czegoś. W naszym przypadku sprawdza, czy wartość zmiennej "i"
wynosi 100 i zdecydować, czy powtórzyć instrukcję czy zakończyć pętle.
Wskazówka
Instrukcja "break;" powoduje, że program przerywa pętle, a "halt;" zamyka cały
program.
Pętla While - do
PROGRAM petla2;
VAR
i: integer;
BEGIN
i := 1;
while i <= 100 do //1
begin //2
write ('Wpisz liczbę większą od 100: ');
readln (i);
end; //3
readln;
END.
|
W konstrukcji while - do (1) warunek znajduje się na początku, więc program
wcale nie musi wykonywać bloku instrukcji, jeżeli warunek jest już spełniony.
Jeżeli w strukturze kontroli while - do blok instrukcji zawiera więcej niż jedno
polecenie trzeba wyraźnie zaznaczyć, gdzie się zaczyna (2), a gdzie kończy (3).
Jest to możliwe za pomocą begin - end;. Ta czynność niepotrzebna jest w pętli
repeat - until, gdyż w niej wyraźnie zaznaczone jest, gdzie znajduje się
początek (repeat), a gdzie koniec (until).
Różnice pomiędzy pętlami
While - do: warunek znajduje się na początku pętli, a kiedy warunek jest
spełniony program powtarza pętlę.
Repeat - until: warunek znajduje się na końcu pętli, a kiedy warunek jest
spełniony program kończy pętlę.
Pętla for - do
PROGRAM petla3;
VAR
i: integer
BEGIN
for i := 0 to 5 do //1
begin
writeln ('Do zakończenia programu pozostało: ',i); //2
readln;
end;
readln;
END.
|
Działanie pętli możemy przetłumaczyć w następujący sposób:
"DLA zmiennej, której wartość zmienia się od początkowej do końcowej, komputer
powinien POWTARZAĆ blok instrukcji."
Konstrukcja for - do (1) również powtarza określony blok instrukcji (2) do tego
czasu aż wartość początkowa, którą w naszym przypadku jest 1, będzie równa
wartości końcowej [5]. Dzięki tej pętli szczegółowo zaplanujesz ile razy dany
blok instrukcji zostanie wykonany. Już na początku pętli (1) ustalasz od jakiej
liczby komputer będzie odliczał [1] do jakiej [5]. Za każdym razem, gdy komputer
wykona dany blok instrukcji wartość początkowa zwiększy się o 1 itd. Ta czynność
będzie trwała tak długo aż wartość początkowa i końcowa będą sobie równe.
Wskazówka
Jeżeli chcesz, aby komputer odliczał do tyłu (np. od 5 do 0) zmiast instrukcji
"to" (1), wstaw "downto". A jeżeli do przodu (np. od 0 do 100) wstaw instrukcje
"to".
|