Пример. Составить таблицу квадратов и квадратных корней для чисел от 1 до 100.
N:=1 ;
While n<=100 do
Begin
Writeln (‘n=’,n,’sqr(n)’,sqr(n),’sqrt(n)’,sqrt(n));
N: =N+1
End;
В общем случае данный оператор цикла записывается так:
While условие DO оператор;
Правило его выполнения следующее: оператор выполняется до тех пор, пока остается истинным условие цикла. Как только значение условия становится ложным, цикл прекращает выполняться. Если значение условия ложно перед первым выполнением цикла, то он не выполняется ни разу. Обратите внимание на то, что после слова DО может стоять только один оператор, поэтому чаще всего после слова DO стоит составной оператор.
Приведенный в примере оператор WHILE работает так. Первоначальное значение переменной NUMBER равно 1. Оно задается оператором присваивания. Затем проверяется условие, которое в данном случае имеет вид: N<=100. Знак <= означает “ меньше или равно”. Естественно, что условие 1<= 100 истинно, поэтому выполняется оператор стоящий после слова DO. Этот оператор называется телом цикла. Он вычисляет и выдает на печать значения квадрата и квадратного корня числа 1, а также увеличивает значение переменной на единицу. Теперь ее значение равно двум, условие цикла остается истинным, и цикл выполняется еще раз. Последний раз цикл будет выполняться для значения n=100. Условие 100<=100 истинно, и цикл выполняется. Внутри цикла происходит очередное увеличение переменной N на 1, и ее значение становится равным 101. Очередная проверка условия цикла дает значение условия ложное, и выполнение цикла прекратится. Таким образом, данный цикл выдает значения квадратов и квадратных корней для чисел от 1 до 100 включительно.
Выход из цикла осуществляется, когда условие перестает выполняться, значит можно задать цикл, который вообще ни разу не будет выполняться (поставить заведомо ложное условие).