Просмотр содержимого документа
«Презентация "Алгоритмизация. Циклические алгоритмы с предусловием"»
Основы алгоритмизации
Циклические алгоритмы Цикл с предусловием
Циклы
Циклический алгоритм – это алгоритм, в котором одна и та же последовательность команд (тело цикла) повторяется несколько раз (или ни разу) в зависимости от некоторого условия.
Цикл с предусловием (цикл «ПОКА») – повторение тела цикла пока условие продолжения цикла выполняется
Алгоритмический язык (КуМир):
Начало
нц пока кц
нет
Условие
да
Тело цикла
Конец
Задача. Правее Робота расположен коридор неизвестной длины. Робот должен закрасить все клетки этого коридора и вернуться в исходное положение.
использовать Робот алг Коридор нач . нц пока справа свободно . . вправо . . закрасить . кц . нц пока сверху стена и снизу стена . . влево . кц кон
Задача. Лыжник в первый день тренировок пробежал 10 км. Каждый следующий день он увеличивал пройденное расстояние на 10% от пройденного в предыдущий день. При достижении 15 км увеличение дистанции должно прекратиться. В какой день он пробежит больше 15 км?
алг Тренировка нач цел д, вещ р . д:= 1 . р:= 10 . нц пока р5 . . д:=д+ 1 . . р:=р+ 0.1 *р . . вывод "день " , д, " дистанция " , р, нс . кц кон
начало
д := 1
р := 10
нет
р ≤ 15
да
д := д+1
р:=р+0,1 *р
день 2 дистанция 11
день 3 дистанция 12.1
день 4 дистанция 13.31
день 5 дистанция 14.641
день 6 дистанция 16.1051
вывод д, р
конец
Задача. Дан алгоритм вычисления степеней числа 2. Составьте таблицу значений переменных этого алгоритма при x = 0, 1, 2, 3.
Шаг алго-ритма
Переменная
1
x
y
Условие
2
3
x
4
5
6
7
8
9
10
11
12
13
17
18
начало
x := 0
-
-
0
1
y := 1
0
нет
1
x ≤ 3
2
0 1
да
вывод x, y
x := x+1
y:=y *2
конец
Задача. Дан алгоритм вычисления степеней числа 2. Составьте таблицу значений переменных этого алгоритма при x = 0, 1, 2, 3.
Шаг алго-ритма
Переменная
1
x
Условие
2
y
x
3
4
5
6
7
8
9
10
11
12
13
17
18
начало
x := 0
-
0
1
y := 1
0
нет
1
x ≤ 3
2
0 1
1 2
да
1
вывод x, y
2
x := x+1
4
y:=y *2
конец
Задача. Дан алгоритм вычисления степеней числа 2. Составьте таблицу значений переменных этого алгоритма при x = 0, 1, 2, 3.
Шаг алго-ритма
Переменная
1
x
Условие
y
2
x
3
4
5
6
7
8
9
10
11
12
13
17
18
начало
x := 0
-
0
1
y := 1
0
нет
1
x ≤ 3
2
0 1
1 2
2 4
да
1
вывод x, y
2
x := x+1
4
2
y:=y *2
3
8
конец
Задача. Дан алгоритм вычисления степеней числа 2. Составьте таблицу значений переменных этого алгоритма при x = 0, 1, 2, 3.
Шаг алго-ритма
Переменная
1
x
2
Условие
y
3
x
4
5
6
7
8
9
10
11
12
13
17
18
начало
x := 0
-
0
1
y := 1
0
нет
1
x ≤ 3
2
0 1
1 2
2 4
3 8
да
1
вывод x, y
2
x := x+1
4
2
y:=y *2
3
8
3
4
конец
16
Задача. Дан алгоритм вычисления степеней числа 2. Составьте таблицу значений переменных этого алгоритма при x = 0, 1, 2, 3.
Шаг алго-ритма
Переменная
1
x
2
y
Условие
3
x
4
5
6
7
8
9
10
11
12
13
17
18
начало
x := 0
-
0
1
y := 1
0
нет
1
x ≤ 3
2
0 1
1 2
2 4
3 8
да
1
вывод x, y
2
x := x+1
4
2
y:=y *2
3
8
3
4
конец
16
4
Задача. Дан алгоритм вычисления степеней числа 2. Составьте программу на языке КУМИР при x = 0, 1, 2, …, 5.
алг Цикл ПОКА нач . цел x , y . x := 0 . y := 1 . нц пока x 5 . . вывод x , ' ' , y , нс . . x := x + 1 . . y := y * 2 . кц кон
начало
x := 0
y := 1
нет
x ≤ 5
да
вывод x, y
x := x+1
y:=y *2
0 1
1 2
2 4
3 8
4 16
5 32
конец