Pętla While-Do
Pętla While DO jest jedną z najczęściej stosowanych pętli przez programistów. Umożliwia ona bowiem, sprawdzenie warunku na samym początku w przeciwieństwie do instrukcji REPEAT UNTIL gdzie warunek sprawdzany jest na jej końcu.
Ogólna składnia pętli While Do wygląda tak:
WHILE {warunek} DO
BEGIN {otwieramy klamrę BEGIN-END, w przypadku gdy podany kod będzie składał się z więcej niż jednej instrukcji}
{kod}
END; {zamykamy klamrę BEGIN-END}Przykład zastosowania pętli WHILE-DO:
WHILE a = 0 DO
BEGIN
write('Podaj jeszcze raz liczbę (ma ona być różna od 0): ');
readln(a);
END;Powyższa pętla będzie działać do momentu kiedy nie zostanie podana liczba różna od 0 (wtedy warunek podany na początku instrukcji zwróci false czyli będzie nie prawdziwy i pętla nie zostanie wykonana).
W ramach praktycznego ćwiczenia przeróbmy więc program z poprzedniego artykułu, ale tak aby zamiast pętli REPEAT-UNTIL użyć instrukcję WHILE-DO:
program dzielenie-repeat;
uses CRT;
var
a,b:byte;
wynik:real;
begin
ClrScr;
Write('Podaj pierwszą liczbę: ');
Readln(a);
Write('Podaj liczbę różną od 0: ');
Readln(b);
WHILE b = 0 DO
BEGIN
write('Podaj jeszcze raz liczbę (ma ona być różna od 0): ')
readln(b);
END;
wynik := a/b;
write('Wynik dzielenia wynosi: ', wynik:4:2);
repeat until KeyPressed;
end.