Лабораторная работа 9.
Циклические конструкции. Оператор цикла с постусловием
Оператор цикла с постусловием:
Оператор цикла с постусловием организует выполнение цикла, состоящего из любого количества операторов неизвестное заранее количество раз.
Выход из цикла осуществляется, если некоторое логическое выражение окажется истинным. Так как истинность логического оператора проверяется в конце, тело цикла выполняется хотя бы один раз.
Структура оператора:
REPEAT
<Оператор 1>;
<Оператор 2>; . .
<Оператор N>;
UNTIL<условие>;
В этой структуре:
<Оператор 1>; <Оператор 2>; . . . <Оператор N>; - тело цикла.
<условие> - логическое выражение, ложность которого проверяется после выполнения тела цикла.
Порядок выполнения оператора:
Выполняются
операторы, следующие за служебным словом REPEAT. После этого проверяется условие. Если условие ложно, то происходит возврат к
выполнению операторов, следующих за служебным словом REPEAT, и снова проверяется условие.
Если условие истинно, то выполнение тела цикла прекращается.
В "жаргонном" переводе на русский язык, оператор цикла с постусловием "звучит" так:
Повторять тело цикла пока не выполнится условие.
В цикле REPEAT тело цикла выполняется по крайней мере один раз.
Примеры применения:
{Усовершенствованная
программа, вычисляющая сумму двух чисел}
Program ЕХ1;
Var х, у,
sum.: real; t: byte;
Begin
REPEAT
Writeln(
‘Bведите числа x и у.’);
Readln(x, у);
sum := x + у;
Writeln(‘Сумма чисел равна ‘, sum);
Write(‘Завершить программу? 1-да, 2-нет
:’);
Readln(t);
UNTIL t = 1;
End.
{Bычисление суммы S = 1 + 1/2 + 1/3 + ... + 1/50}
Program EX2;
Var n: integer; s: real;
Begin
s:= 0;
n:= 1;
REPEAT
s:= s + 1/n;
n := n + 1;
UNTIL n > 50;
Writeln(‘ Результат суммирования ... ‘
,s);
End.
Контрольные вопросы:
1 Что представляет собой тело цикла оператора цикла с постусловием?
2 Сколько раз выполняется оператор цикла с постусловием?
3 Как осуществляется выход из оператора цикла с постусловием?
4 Объясните структуру оператора цикла с постусловием.
5 Объясните порядок выполнения оператора цикла с постусловием.
6 Объясните блок-схему оператора цикла с постусловием.
7 Приведите примеры применения оператора цикла с постусловием.
Задания для самостоятельного выполнения лабораторной работы 9.
1 Вычислите значение функции у=х
3-х
2+16х-43 для х изменяющегося в диапазоне от -4 до 4 включительно с шагом 0,5.
2 Напишите программу вычисления функции
y= х-4 для х>2
у= х
2+14 для х< -2
y= х/4 в
остальных случаях
для х изменяющегося от -5 до 3 с шагом 0,25.
3 Вычислить сумму ряда s
=sin(l) + sin(2) + ... +sin(n), для n введённого с клавиатуры.
4 Вычислить сумму ряда s = cos(х) + cos(х)*cos(х) + ... +cos(х)*cos(х)*...*cos(х), для х и n введённых с клавиатуры.
5 Изобразите фрагмент дуги радуги.
6
Напишите программу, которая рисует последовательность из n окружностей радиуса r и цвета с, для n, r и с введённых с клавиатуры.
7 Нарисовать "диагональ" экрана, состоящую из 15 разноцветных треугольников.
8 Нарисуйте ромб из
40 разноцветных прямоугольников одинакового размера.
9 Нарисовать сетку из пересекающихся окружностей разного цвета, размером nхn, для n введённого с клавиатуры.
10 Нарисуйте окружность состоящую из 36 разноцветных окружностей увеличивающегося размера.