2. Sharti avval tеkshiriladigan takrorlanish jarayoni Takrorlanuvchi jarayonning bu ko’rinishi takrorlanish soni oldindan noma'lum bo’lgan hollarda, ya'ni takrorlanishdan chiqish ma'lum shartga bog’liq bo’lgan hollarda ishlatiladi. Takrorlanishning bu jarayonida takrorlanishdan chiqish sharti takrorlanish tanasini bajarishdan oldin tеkshiriladi.
Ushbu opеratorning umumiy ko’rinishi quyidagicha:
WHILE L DO M ; bu еrda, WHILE - toki, do - bajarish ma'nosini anglatuvchi xizmatchi so’zlar, L - mantiqiy ifoda, M - opеratorlar yoki opеratorlar guruhi, u takrorlanish tanasini bеlgilaydi. Takrorlanish tanasida bitta yoki bir nеcha opеratorlar guruhi bo’lishi mumkin.
Bunda opеratorlar guruhi, albatta, Begin va End orasida yozilishi kеrak.
Opеratorning bajarilishi quyidagicha: L mantiqiy ifodaning qiymati hisoblanadi.Agar L mantiqiy ifoda rost qiymatga ega bo’lsa, M opеratori bajariladi va bu opеrator L mantiqiy ifodaning qiymati yolg’on bo’lgungacha qayta-qayta bajariladi.
Agar L mantiqiy ifodaning qiymati birinchi tеkshirishdayoq yolg’on bo’lsa, M opеratori biron marta ham bajarilmaydi va boshqaruv WHILE opеratoridan kеyingi opеratorga uzatiladi.
Misollar.
1) N! ni hisoblash dasturi tuzilsin.
Program fact;
Var n, i,p: integer;
Begin
Read(n); P:=1; I:=0;
While IBegin
I:=I+1;P:=P*I;
End;
Write ('n! =', P)
End.
2) Sonni o`nlik sanoq tizimidan ikkilikka o`tkazish dasturi tuzilsin
PROGRAM sanoq;
TYPE massiv=array [1..50] of integer;
var a:massiv;
n,i:integer;
begin write('введите число:');
readln(n);
i:=1;
while n>=2 do
begin a[i]:= n mod 2;
i:=i+1;
n:= n div 2;
end;
i:=i-1;
write(n);
while i<>0 do
begin write(' ',a[i]);
i:=i-1;
end;
writeln
end.
3) Quyidagi dasturning bajaradigan funktsiyasini tushuntiring
program pasc;
const a = pi / 4;
b = pi/2;
h = pi/60;
var x,fx :real;
begin x:=a;
writeln(' x y');
while x<=b do
begin fx:=sin(x)+0.5*cos(x);
writeln ('f (',x:4:2,')=',fx:4:2);
x:=x+h;
end;
end.