Similar presentations:
Циклические алгоритмы. Реализация циклов в Object Pascal
1. Циклические алгоритмы. Реализация циклов в Object Pascal
2. План
1.2.
3.
4.
Понятие «цикл»
Цикл с предусловием в Object Pascal
Цикл с постусловием в Object Pascal
Цикл с параметром в Object Pascal
3.
Цикл – это группапоследовательных действий,
завершающаяся переходом
при выполнении некоторого
условия на первую команду
этой группы.
4. Два основных вида циклов:
1. Цикл с известным числомповторений.
2. Циклы с неизвестным количеством
повторений.
5. Структура цикла
Начало: подготовка цикла
Проверка:
определяет
момент
выхода из цикла
Тело цикла: содержит рабочую часть
и
продвижение
(обновление
параметра
или
величины,
его
заменяющей)
6. Задача о «монетах»
Начало: …Проверка: в кармане есть монеты?
Тело цикла: взять монету из кармана
! Организовать цикл с известным
числом повторений и цикл с
неизвестным числом повторений
7. 2. Цикл с предусловием в Object Pascal
Пока условие выполнятьСерия
Конец –цикл
условие
Да
S1
while <условие> do <оператор>;
Нет
8.
Задача: найти сумму рядаS = 1+1/2+1/3+…+1/n c точностью до e=0,001
Const e=0.001;
Var s:real; n:integer;
begin
s:=0; n:=1;
while 1/n>e do
begin
s:=s+1/n;
inc(n);
end;
writeln('summ = ',s);
end.
9. 3. Цикл с постусловием в Object Pascal
ВыполнятьСерия
Пока условие
S1
Нет
условие
repeat
<тело цикла>
until <условие>;
Да
10.
Задача: среднее арифметическое введенныхчисел
Var s,a:real; n:integer;
begin
s:=0; n:=0;
repeat
readln(a); s:=s+x; inc(n);
until a=0;
writeln('srednee = ',s/n);
end.
11. 4. Цикл с параметром в Object Pascal
Для i от n до m выполнятьСерия
Конец –цикл
i:=n,m
Нет
Да
S1
for <параметр>:=<нач_знач> to <кон.знач>
do <оператор>;
12.
Задача: найти сумму чисел от 1 до NVar n, s, i : integer;
begin
s:=0;
writeln('vvedite N');
readln(n);
for i:=1 to n do
s:=s+n;
writeln('sum = ',s);
readln;
end.
13.
Другая форма оператораfor <парам.>:=<нач_знач> downto <кон.знач>
do <оператор>;
14. Задача: вывести на экран символы в обратном порядке
Var i : integer;begin
for i:=255 downto 0 do
write(chr(i),' ');
readln;
end.