Циклические конструкции
Оператор цикла с постусловием
Оператор цикла с постусловием
Оператор цикла с постусловием организует выполнение цикла, состоящего из любого количества операторов неизвестное заранее количество раз. Выход из цикла осуществляется, если некоторое логическое выражение окажется истинным. Так как истинность логического оператора проверяется в конце, тело цикла выполняется хотя бы один раз.
Структура оператора
Repeat
<оператор_1>;
<оператор_2>;
. . .
<оператор_N>;
Until <>;
В этой структуре:
<оператор_1>;<оператор_2>;. . . <оператор_N>; — тело цикла.
<условие> — логическое выражение, ложность которого проверяется после выполнения тела цикла.
Порядок выполнения оператора
Выполняются операторы, следующие за служебным словом Repeat. После этого проверяется условие. Если условие ложно, то происходит возвращение к выполнению операторов, следующих за служебным словом Repeat и снова проверяется условие. Если условие истинно, то выполнение тела цикла прекращается.
В "жаргонном" переводе на русский язык, оператор цикла с постусловием "звучит" так:
Повторять тело цикла пока не выполнится условие.
В цикле Repeat тело цикла выполняется по крайней мере один раз.
Блок-схема оператора цикла с постусловием
Пример программы
Вычисление суммы S=1+1/2+1/3+…+1/50
Prosedure TForm1.Button1.Click(Sender:TObject);
Var n:Integer;
s:Real;
Begin
s:=0;
n:=1;
Repeat
s:=s+1/n;
n:=n+1;
Until n>50;
LabelN.Caption:='S='+FloatToStr(s);
End;
Задания для самостоятельного решения:
1. Вычислите значение функции y=x3-x2+16x-43 для х меняющегося в диапазоне от -4 до 4 включительно с шагом 0,5.
2. Вычислите сумму ряда s=sin(1)+sin(2)+…+sin(n), для n введенного с клавиатуры.
3. Напишите программу, которая проверяет, является ли целое число, введенное пользователем, простым.
Контрольные вопросы:
1. Что представляет собой тело цикла оператора цикла с постусловием?
2. Сколько раз выполняется оператор цикла с постусловием?
3. Как осуществляется выход из оператора цикла с постусловием?
4. Объясните структуру оператора цикла с постусловием.
5. Объясните порядок выполнения оператора цикла с постусловием.
6. Объясните блок-схему оператора цикла с постусловием.
7. Приведите примеры применения оператора цикла с постусловием.