Циклические алгоритмы

Содержание

Слайд 2

Цикл - это такая алгоритмическая структура, в которой осуществляется многократное повторение одной

Цикл - это такая алгоритмическая структура, в которой осуществляется многократное повторение одной (или нескольких) команд.
(или нескольких) команд.

Слайд 3

Виды циклических алгоритмов

С условием
(заранее НЕизвестно сколько раз выполняется действие)

С параметром
(заранее известно сколько

Виды циклических алгоритмов С условием (заранее НЕизвестно сколько раз выполняется действие) С
раз выполняется действие)

Цикл с предусловием («ПОКА»)

Цикл с постусловием («ДО»)

Слайд 4

Циклические алгоритмы

С условием

С параметром

Виды

Цикл с предусловием («ПОКА»)

Цикл с постусловием («ДО»)

Циклические алгоритмы С условием С параметром Виды Цикл с предусловием («ПОКА») Цикл с постусловием («ДО»)

Слайд 5

Цикл с параметром («для каждого»)

I – параметр цикла
M – начальное значение параметра
N

Цикл с параметром («для каждого») I – параметр цикла M – начальное
– конечное значение

Слайд 6

Форма записи цикла с параметром

for i:=M to N do <оператор>
for i:=M downto

Форма записи цикла с параметром for i:=M to N do for i:=M
N do <оператор>
i- параметр цикла (переменная целого типа, ее значение автоматически изменяется на 1 (увеличивается или уменьшается)
M, N – границы изменения параметра (сначала I принимает значение M; выполнение действий заканчивается, когда I=N)
<Оператор> – оператор, который должен повторяться (если операторов больше одного, то они заключаются в операторные скобки begin … end)

Слайд 7

Примеры

for I:=M to N do <оператор>
Например:
for I:=1 to 10 do writeln

Примеры for I:=M to N do Например: for I:=1 to 10 do
(‘ПРИВЕТ!’)
for I:=1 to 10 do writeln (I)
for I:=M downto N do <оператор>
Например:
for I:=10 downto 0 do writeln (‘ПРИВЕТ!’)
for I:=10 downto 0 do writeln (I)

Слайд 8

Фрагмент программы

for i:=1 to 15 do
begin
writeln (‘число');
readln (a);

Фрагмент программы for i:=1 to 15 do begin writeln (‘число'); readln (a);
s:=s+a;
end;

Примечание: если цикл содержит несколько команд, то применяются операторные скобки (begin … end)

Слайд 9

Циклы с условием

Цикл с предусловием

оператор
….

Усл.

да

нет

оператор

читается:
ПОКА выполняется условие, ДЕЛАТЬ …

читается:

Циклы с условием Цикл с предусловием оператор …. Усл. да нет оператор

ПОВТОРЯТЬ оператор ДО некоторого условия

Цикл с постусловием

Слайд 10

Цикл с предусловием (WHILE)

известно условие продолжения цикла (не забыть и про завершение).

Цикл с предусловием (WHILE) известно условие продолжения цикла (не забыть и про

условие должно проверяться ДО выполнения тела цикла.
Цикл выполняется до тех пор, пока условие ИСТИННО.
Оператор может не выполниться ни разу.

Слайд 11

Если повторяется один оператор, то:
WHILE <условие> DO <оператор>
Если повторяется несколько операторов, то:
WHILE

Если повторяется один оператор, то: WHILE DO Если повторяется несколько операторов, то:
<условие> DO
begin
<оператор1>
<оператор2>

end

Слайд 12

Цикл с постусловием (REPEAT)

известно условие завершения цикла.
условие должно проверяться ПОСЛЕ выполнения

Цикл с постусловием (REPEAT) известно условие завершения цикла. условие должно проверяться ПОСЛЕ
тела цикла.
Тело цикла выполняется хотя бы один раз.

Слайд 13

Repeat
Оператор 1
Оператор 2
….
Until <условие завершения>

Repeat Оператор 1 Оператор 2 …. Until

Слайд 14

Тело цикла – это действие (или последовательность действий) , которое повторяется.
Условие завершения

Тело цикла – это действие (или последовательность действий) , которое повторяется. Условие
цикла – определенное условие, при котором тело цикла завершает выполняться.
Условие продолжения цикла -определенное условие, при котором тело цикла продолжает выполняться.

Слайд 15

Пример

i:=1; a:=0;
WHILE i<=10 DO
begin
a:=a+5;
i:=i+1;
end;
writeln (a);
Ответ: 50

Пример i:=1; a:=0; WHILE i begin a:=a+5; i:=i+1; end; writeln (a); Ответ: 50

Слайд 16

For k:=4 to 6 do sum:=sum+3

k:=4;
while k<=6 do
begin
sum:=sum+3;
k:=k+1;
end;
Writeln (sum);

k:=4;
repeat
sum:=sum+3;
k:=k+1
until k>6;
Writeln (sum);

For k:=4 to 6 do sum:=sum+3 k:=4; while k begin sum:=sum+3; k:=k+1;

Слайд 17

Определите результат выполнения программы

k:=0;
s:=10;
while s>0 do
begin
s:=s-3;
k:=k+1;
end;
writeln(‘s=’,s);
writeln(‘k=’,k)

k:=0;
s:=10;
while s<0 do
begin
s:=s+3;
k:=k+1;
end;
writeln(‘s=’,s);
writeln(‘k=’,k)

№1

№2

Определите результат выполнения программы k:=0; s:=10; while s>0 do begin s:=s-3; k:=k+1;

Слайд 18

Определите результат выполнения программы

m:=1; i:=1;
while i<5 do i:=i+1;
m:=m+i
writeln(i,m)

№3

Определите результат выполнения программы m:=1; i:=1; while i m:=m+i writeln(i,m) №3

Слайд 19

Определите результат выполнения программы

x:=1; y:=1;
If y>0 then x:=x+1 else x:=x-1
while y>0 do

Определите результат выполнения программы x:=1; y:=1; If y>0 then x:=x+1 else x:=x-1
begin
y:=y-1;
x:=y;
end;
writeln(x,y)

№4

Имя файла: Циклические-алгоритмы.pptx
Количество просмотров: 1294
Количество скачиваний: 9