Циклические конструкции.
Оператор цикла с постусловием
Оператор цикла с
постусловием:
Оператор цикла с
постусловием организует выполнение цикла, состоящего из любого количества
операторов неизвестное заранее количество раз. Выход из цикла
осуществляется, если некоторое логическое выражение окажется истинным. Так
как истинность логического оператора проверяется в конце, тело цикла
выполняется хотя бы один раз.
Структура оператора:
REPEAT
<Оператор 1>;
<Оператор 2>;
. . .
<Оператор N>;
UNTIL <условие>;
В этой структуре: <Оператор
1>; <Оператор 2>; . . . <Оператор N>; - тело цикла.
<условие> - логическое выражение, ложность которого проверяется после
выполнения тела цикла.
Порядок выполнения
оператора:
Выполняются операторы,
следующие за служебным словом REPEAT. После этого проверяется условие. Если
условие ложно, то происходит возврат к выполнению операторов, следующих за
служебным словом REPEAT и снова проверяется условие. Если условие истинно,
то выполнение тела цикла прекращается.
В "жаргонном" переводе на
русский язык, оператор цикла с постусловием "звучит" так:
Повторять тело цикла пока
не выполнится условие.
В цикле REPEAT тело цикла
выполняется по крайней мере один раз.
Примеры применения:
{Усовершенствованная программа, вычисляющая сумму двух чисел}
Program EX1;
Var
x, y, sum: real;
t: byte;
Begin
REPEAT
Writeln('Введите числа x и y.')
Readln(x, y); sum := x + y;
Writeln('Cумма чисел равна ', sum);
Write('Завершить программу? 1-да, 2-нет :');
Readln(t);
UNTIL t = 1;
End.
{Вычисление суммы 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.
Контрольные вопросы:
- Что представляет собой тело цикла оператора
цикла с постусловием?
- Сколько раз выполняется оператор цикла с
постусловием?
- Как осуществляется выход из оператора цикла с
постусловием?
- Объясните структуру оператора цикла с
постусловием.
- Объясните порядок выполнения оператора цикла с
постусловием.
- Объясните блок-схему оператора цикла с
постусловием.
- Приведите примеры применения оператора цикла с
постусловием.
Задания для
самостоятельного выполнения.
- Вычислите значение функции y=x^3-x^2+16x-43 для
x изменяющегося в диапазоне от -4 до 4 включительно с шагом 0,5.
- Напишите программу вычисления функции
+ x-4 для x>2
y=¦ x^2+14 для x<-2
+ x/4 в остальных случаях
для x изменяющегося от -5 до 3 с шагом 0,25.
- Вычислить сумму ряда s = sin(1) + sin(2) + ...
+sin(n), для n введённого с клавиатуры.
- Вычислить сумму n
членов ряда s = cos(x) + cos(x)*cos(x) + ... + cos(x)*cos(x)*...*cos(x), для x и n введённых с клавиатуры.
- Изобразите фрагмент дуги радуги.
- Напишите программу, которая рисует
последовательность из n окружностей радиуса r и цвета с, для n, r и c
введённых с клавиатуры.
- Нарисовать "диагональ" экрана, состоящую из 15
разноцветных треугольников.
- Нарисуйте ромб из 40 разноцветных
прямоугольников одинакового размера.
- Нарисовать сетку из пересекающихся окружностей
разного цвета, размером nxn, для n введённого с клавиатуры.
- Нарисуйте окружность состоящую из 36
разноцветных окружностей увеличивающегося размера.
назад
ДАЛЕЕ