PascalABC.NET

Операторы цикла while и repeat

Оператор цикла while имеет следующую форму:

while условие do   оператор

Условие представляет собой выражение логического типа, а оператор после do называется телом цикла. Перед каждой итерацией цикла условие вычисляется, и если оно истинно, то выполняется тело цикла, в противном случае происходит выход из цикла.

Если условие всегда оказывается истинным, то может произойти зацикливание:

while 2>1 do
  write(1);

Оператор цикла repeat имеет следующую форму:

repeat
 
операторы
until условие

В отличие от цикла while, условие вычисляется после очередной итерации цикла, и если оно истинно, то происходит выход из цикла. Таким образом, операторы, образующие тело цикла оператора repeat, выполняются по крайней мере один раз.

Обычно оператор repeat используют в ситуациях, где условие нельзя проверить, не выполнив тело цикла. Например:

repeat
  read(x);
until x=0;

Если условие всегда оказывается ложным, то может произойти зацикливание:

repeat
  write(1);
until 2=1;