Оператор цикла с предварительным условием (while)

Этот оператор используется в том случае, если некоторую последовательность действий (инструкций программы) надо выполнить несколько раз, причем необходимое число повторений во время разработки программы неизвестно и может быть определено только во время ее работы, т.е. определяется ходом вычисления.

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

WHILE <логическое выражение> DO

BEGIN

{операторы циклической части программы}

END;

Оператор цикла действует следующим образом. Предварительно проверяется значение логического выражения. Пока оно истинно, выполняются операторы циклической части. Как только оно становится ложным, происходит выход из цикла. Если с самого начала значение логического выражения ложно, то операторы циклической части не выполняются ни разу. Операторы циклической части, заключенные в операторные скобки BEGIN – END, представляют собой составной оператор. Возможен случай, когда в циклической части стоит оператор перехода, передающий управление за пределы цикла. В такой ситуации цикл может завершиться до его естественного окончания (при истинном значении логического выражения).

Если в циклической части стоит всего один оператор, то операторные скобки BEGIN – END можно не указывать и оператор цикла принимает вид:

WHILE <логическое выражение> DO <оператор>;

Пример 6.

Вычислить значения функции , если значение аргумента изменяется от до с шагом .

Решение:

program pr1;

var x,xn,xk,dx,b,y:real;

begin

readln(xn,xk,dx,b);

x:=xn;

while x<=xk do

begin

if x<b then y:=exp(exp(1)) else y:=ln(x);

writeln(‘x=’, x:8:2, ‘y=’, y:8:2);

x:=x+dx

end

end.

Необходимо обратить внимание:

- для того чтобы инструкции оператора цикла while были выполнены хотя бы один раз, необходимо, чтобы перед выполнением оператора while условие выполнения цикла было истинно;

- для того чтобы цикл завершился, необходимо, чтобы последовательность инструкций между BEGIN и END изменяла значения переменных, входящих в логическое выражение.


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: