Оператор WHILE

Оператор while (пока) часто называют оператором цикла с предусловием за то, что проверка условия выполнения тела цикла производится в самом начале оператора.

Формат записи:

while <условие продолжения повторений> do

<тело цикла>;

Условие – булевское выражение, тело цикла – простой или составной оператор.
Перед каждым выполнением тела цикла вычисляется значение выражения условия. Если результат равен True, то тело цикла выполняется, и снова вычисляется выражение условия. Если результат равен False, происходят выход из цикла и переход к первому после while оператору.
Примером работы while может служить программа DemoWhile, которая производит суммирование десяти произвольно введенных целых чисел.
program DemoWhile;
const Limit = 10; {Ограничение на количество вводимых чисел}
var
Count. Item. Sum: integer:
begin
Count:= 0; {Счетчик чисел}
Sum:= 0; {Сумма чисел}
while (Count < Limit) do {Условие выполнения цикла}
begin

Count:= Count+1;

Write(‘Введите ‘, Count, ‘-e целое число: ‘);

Readln(Item); {Ввод очередного числа с клавиатуры}

Sum:= Sum+Item;

end;
Writeln(‘Сумма введенных чисел равна ‘, Sum);
end.

В данном примере в разделе описания констант описана константа Limit = 10, задающая ограничение на количество вводимых чисел. В разделе описания переменных описаны переменные Count, Item, Sum целочисленного типа. В начале выполнения программы обнуляются значения счетчика введенных чисел Count и их суммы.

Затем выполняются цикл ввода 10 чисел и их суммирование. Вначале оператора условия while проверяет условие Count < Limit. Если выражение истинно, то выполняется составной оператор в теле цикла:

begin
Count:= Count+1; Write(‘Введите ‘, Count, ‘-e целое число: ‘);
Readln(Item); Sum: = Sum+Item:
end

в котором вводится значение очередного числа, и на это значение увеличивается значение суммы. После этого управление в программе вновь передается оператору цикла while, опять проверяется условие Count < Limit. Если выражение истинно, то выполняется составной оператор и т. д., пока значение переменной Count меньше 10.

Как только значение Count станет равно 10 и условие Count < Limit не будет соблюдено, выполнение цикла завершится, а управление будет передано на оператор, находящийся за словом end, т. е. первый оператор за границей while. Это вызов процедуры Writeln, которая выведет сообщение «Сумма введенных чисел равна» и напечатает значение переменной Sum.

Добавить комментарий