Pętla for ... to ... do
for licznik:=wartosc_poczatkowa to wartosc_koncowa do instrukcja_iteracyjna for licznik:=wartosc_poczatkowa downto wartosc_koncowa do instrukcja_iteracyjna
Używa się tej pętli, gdy ilość powtórzeń jest z góry znana - instrukcja wykonuje określoną ilość iteracji. Pętla automatycznie zwiększa (zmniejsza) wartość licznika o 1.
for i:=1 to 10 do writeln(i); {wypisuje liczby od 1 do 10 w kolejnych liniach} s:=1; for i:=10 downto 1 do s:=s*i {oblicza silnię z 10}
Pętla while ... do
while wyrazenie do instrukcja
Instrukcja ta służy do powtarzania instrukcji występującej po słowie "DO", jeżeli spełniony jest warunek określony przez "WYRAZENIE".
i:=0; while i<20 do begin writeln(i); i:=i+3; end;
Pętla repeat ... until
REPEAT instrukcja; UNTIL warinek
Instrukcja służy do powtarzania insrukcji zawartych między słowami REPEAT i UNTIL aż do spełnienia warunku określonego przez wyrażenie po słowie UNTIL.
s:=0; i:=1; repeat s:=s+i; i:=i+1; until i>10
Zadanie 1. Oblicz trzema sposobami silnię z podanej liczby naturalnej.
program silnia_for; var i, n: integer; suma: real; begin suma:=1; ReadLn(n); for i:=1 to n do begin suma:=suma*i; end; WriteLn(suma:0:0); ReadLn; end.
program silnia_while; var n, i : integer; suma : real; begin readLn(n); i:=1; suma:=1; while i<=n do begin suma:=suma*i; i:=i+1; end; WriteLn(suma:0:0); ReadLn; end.
program silnia_repeat; var i, n: integer; suma: real; begin i:=1; suma:=1; readLn(n); repeat begin suma:=suma*i; i:=i+1; end until i>n; WriteLn(suma:0:0); ReadLn; end.