Лабораторная работа 22
Разработка программ с использованием оператора цикла с постусловием
1. Цель работы: овладеть практическими навыками разработки программ с использованием оператора цикла с постусловием в среде программирования Pascal ABC.
2. Теоретическое обоснование
Цикл обеспечивает многократное выполнение некоторой совокупности действий, которая называется телом цикла.
В языке Паскаль имеются три вида операторов цикла.
while — цикл ПОКА, цикл с предусловием.
for — цикл ДЛЯ, цикл с параметром.
repeat — цикл ДО, цикл с постусловием.
+ |
- |
условие |
действие n |
действие 1 |
Repeat
оператор1;
оператор2;
- - - - - - - -
операторN;
until логическое выражение;
Операторы, заключенные между служебными словами выполняются последовательно до тех пор, пока значение логического выражения ложно, т.е пока не станет истинным.
Пример1. Вычислить значение функции на интервале [-5, 5] с шагом 1.
x:=x + 1 |
+ |
- |
x:= 5 |
x, y |
x > 5 |
|
|
uses Crt;
var x: integer; y: real;
Begin
ClrScr;
writeln (' x y = 2 * x + 5 ');
writeln (' ------------- ');
x:= -5;
Repeat
y:= 2 * x + 5;
writeln (x, ' ', y: 5: 2);
x:= x + 1;
until x > 5;
readln;
end.
3. Алгоритм выполнения работы:
Ознакомиться с теорией вопроса
Выполнить представленные задания
Задание 1. Определите сколько раз выполнится цикл и какое значение примет переменная а после выполнения цикла.
a:= 4; b:= 6; repeat a:= a + 1; until a > b; | |
a:= 4; b:= 6; repeat a:= a + b; until a > b; | |
a:= 4; b:= 6; repeat a:= a + b; until a < b; | |
a:= 4; b:= 6; repeat b:= a - b; until a < b; | |
a:= 4; b:= 6; repeat a:= a + 2; until a < b; |
Задание 2. Составить блок-схему по готовому фрагменту программы.
Program Summa;
Var S:real;
N:integer;
Begin
S:=0;
N:=0;
repeat N:=n+1;
S:=s+1/n Until n>1000;
Writeln(s:0:2);
End.
Задание 3. Составить блок-схему алгоритма и программу на языке Паскаль для вычисления значения функции y на интервале от [a,b] с шагом h. Вывести значения аргумента и функции в виде таблицы.
Результаты работы программы отобразить в отчете.
Вариант | Функция | a | b | h |
1 | -3 | 13 | 1 | |
2 | -1 | 12 | 1 | |
3 | 1 | 15 | 1 | |
4 | -1 | 11 | 1 | |
5 | 0 | 13 | 1 | |
6 | -2 | 12 | 1 | |
7 | 1 | 14 | 1 | |
8 | -5 | 15 | 1 | |
9 | -3 | 10 | 1 | |
10 | -1 | 13 | 1 | |
11 | -5 | -11 | 1 | |
12 | 1 | 12 | 1 |
Задание 4. Ответьте на следующие вопросы
1. Всегда ли будет выполнено тело цикла? | |
2. Что произойдет с циклом, если условие никогда не станет истинным? | |
3. Чем отличается цикл «До» от цикла «Пока»? | |
4. Имеется схема алгоритма. Чему будет равно количество чисел, выведенных на экран при выполнении этого алгоритма? |