Instrukcje iteracyjne w języku Pascal

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.

 

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *

Witryna wykorzystuje Akismet, aby ograniczyć spam. Dowiedz się więcej jak przetwarzane są dane komentarzy.