Цикл – это многократное выполнение одинаковой последовательности действий.

Циклы бывают:
Арифметические (число повторений заранее известно) - Цикл FOR
Итерационные (число повторений заранее неизвестно) - Цикл WHILE, REPEAT.
Цикл – это многократное выполнение одинаковой последовательности действий.

Циклы бывают:
Арифметические (число повторений заранее известно) - Цикл FOR
Итерационные (число повторений заранее неизвестно) - Цикл WHILE, REPEAT.
Задача. Вывести на экран 5 раз слово «Молодец».
Особенность: одинаковые действия выполняются 5 раз.
?
Можно ли решить известными методами?
program z1;
begin
writeln(‘Молодец');
writeln('Молодец');
writeln('Молодец');
writeln('Молодец');
writeln('Молодец');
end.
Циклы в языке Паскаль. Цикл FOR.
Циклы
Цикл – это многократное выполнение одинаковой последовательности действий.
Циклы
Арифметические Итерационные
(число повторений заранее (число повторений известно) заранее неизвестно)
Цикл FOR Цикл WHILE, REPEAT
4
Цикл FOR
Общий вид оператора FOR:
1) For := to do ;
Задача. Напечатать 5 раз слово «молодец».
Схема цикла
Program z1;
var i:integer;
begin
For i:=1 to 5 do
writeln (‘Молодец’);
end.
i:=1 to 5
Нет
Да
Молодец
Цикл FOR
2) For := downto do ;
Принцип работы
Задача ???
Program z1;
var i:integer;
begin
For i:=5 downto 1 do writeln (i);
end.
i:=5 downto 1
Нет
Да
i
Сколько раз выполняется цикл?
a := 1;
for i:=1 to 3 do a := a+1;
a = 4
a := 1;
for i:=3 to 1 do a := a+1;
a = 1
a := 1;
for i:=1 downto 3 do a := a+1;
a = 1
a := 1;
for i:=3 downto 1 do a := a+1;
a = 4
6
6
k
S
9
var s,k: integer;
1)
begin
S:=9;
for k:=1 to 5 do s:=s+12;
writeln(s);
end.
1 9+12
2 (9+12)+12
3 (9+12+12)+12
4 (9+12+12+12)+12
5 (9+12+12+12+12)+12
Решение: 9+5*12=69
Ответ: 69
var s,k: integer;
begin
S:=0;
for k:=0 to 11 do s:=s+4;
writeln(s);
end.
var s,k: integer;
3)
2)
begin
S:=3;
for k:=12 to 31 do s:=s+8;
writeln(s);
end.
Решение: 0+12*4=48
Решение: 3+20*8=163
Ответ: 48
Ответ: 163
var s,k: integer;
begin
S:=0;
for k:=-15 to 5 do s:=s+12;
writeln(s);
end.
var s,k: integer;
5)
4)
begin
S:=10;
for k:=1 downto 11 do s:=s+15;
writeln(s);
end.
Решение: 21*12=252
Решение: цикл не выполнится ни разу, s=10
Ответ: 252
Ответ: 10
var s,k: integer;
begin
S:=100;
for k:=-2 downto -8 do s:=s-10;
writeln(s);
end.
6)
Решение: 100-7*10=30
Ответ: 30
k
S
0
var s,k: integer;
7)
begin
S:=0;
for k:=1 to 11 do s:=s+k;
writeln(s);
end.
1 0+1
2 (0+1)+2
3 (0+1+2)+3
4 (0+1+2+3)+4
… . …..
11 (0+1+2+3+4+…+10)+11
Решение: S=0+(1+2+3+…+11)= 0+ S n =66
Ответ: 66
S n =
8)
var s,k: integer;
begin
S:=12;
for k:=1 to 11 do s:=s+(2*k-1);
writeln(s);
end.
Решение: S=12+(1+3+5+…+21)= 12+ S n = =12+121=133
Ответ: 133
S n =
Практическое задание.
-80%