Просмотр содержимого документа
«Циклические алгоритмы.»
Циклические алгоритмы
Алгоритм называется циклическим , если последовательность шагов алгоритма выполняется многократно
- это алгоритм, предусматривающий многократное повторение одних и тех же действий над новыми данными
Например,
- Перевод текста с иностранного языка (прочитать первое предложение, перевести, записать и т.д.)
- Построение графика функции по точкам (взять первый аргумент, вычислить значение функции, построить точку и т.д.)
Циклический алгоритм -описание действий, которые должны повторятся указанное число раз или пока не выполнено задание
арифметический
итерационный
Число повторений известно заранее или может быть вычислено
Нельзя указать число повторений и проверка окончания цикла происходит по достижению нужного условия
Например, решить 10 примеров
Например, учить стихотворение, пока не расскажешь без ошибок
ЦИКЛ С ПОСТУСЛОВИЕМ
(цикл-до)
ЦИКЛ С ПРЕДУСЛОВИЕМ
(цикл-пока)
итерационные циклы
серия команд
нет
да
условие
нет
да
серия команд
условие
ЦИКЛ С ПАРАМЕТРОМ
параметр
серия команд
В алгоритмах циклической структуры в зависимости от выполнения или невыполнения какого-либо условия выполняется повторяющаяся последовательность действий, называющаяся телом цикла .
начало
ввод исходных данных
тело цикла
условие
вывод результатов
конец
i = A, B, H
ТЕЛО ЦИКЛА
i = A
i ≤ B
Нет
Да
ТЕЛО ЦИКЛА
i = i + H
Различают три типа циклических алгоритмов
- Цикл с параметром
- Цикл с предусловием
- Цикл с постусловием
Цикл с параметром
I = нач. знач., кон. знач., шаг
Вывод данных
В цикле с параметром ( арифметическом ) число его шагов (повторений) однозначно определяется правилом изменения параметра i , которое задается с помощью начального и конечного значения, а так же размером шага его изменения.
i = нач.знач., конеч. знач., шаг
Цикл с предусловием
Цикл с постусловием
Задание : Оформите поговорки в виде блок схем
Куй железо, пока горячо.
Семь раз отмерь, один отрежь.
После дождичка в четверг.
Семь раз отмерь, один отрежь.
I = 1,7, 1
Отрезаем
Куй железо, пока горячо.
Раскаленное
железо
железо
остыло
После дождичка, в четверг.
Дождь в четверг
Выполнение
обещания
Примеры решения задач
- Суммирование
- Подсчет количества элементов
- Произведение
Правило суммирования
- Начальное значение суммы S = 0
- В теле некоторой циклической конструкции выполнить команду:
S = S + слагаемое
Для заданного натурального числа N вычислите сумму N слагаемых: 1+2+3+…+ N
N
S = 0
i = 1, N , 1
S = S + i
S
Правило подсчета количества элементов
- Начальное значение счетчика К = 0
- В теле некоторой циклической конструкции выполнить команду:
К = К + 1
5 K K = K + 1 " width="640"
Задача: В последовательности из 10 целых чисел посчитать количество тех, которые больше 5
K=0
i=1,10,1
х i
Х i 5
K
K = K + 1
Задача: В последовательности натуральных чисел от 1 до 100 посчитать количество чисел кратных 5
Начало
K=0
i=1,10 0 ,1
i mod 5 = 0
K
K = K + 1
Задача: В последовательности натуральных чисел от 1 до 100 посчитать количество чисел кратных 5
K=0
I= 1
I 100
I mod 5=0
K
K = K + 1
конец
I = I + 1
Правило произведения
- Начальное значение произведения Р = 1
- В теле некоторой циклической конструкции выполнить команду:
Р = Р · множитель
Для заданного натурального числа N вычислите произведение N множителей: 1 · 2 · 3 · … · N
N
Р = 1
i = 1, N , 1
Р = Р · i
Р
Составить блок-схему алгоритма вычисления суммы чисел от 1 до 5
S начальная = 0
S = 0 + 1
S = S + 1
S предыдущая
S = 0 + 1 + 2
S = S + 2
S предыдущая
S = 0 + 1 + 2 + 3
S = S + 3
S предыдущая
S = 0 + 1 + 2 + 3 + 4
S = S + 4
S предыдущая
S = 0 + 1 + 2 + 3 + 4 + 5
S = S + 5
S предыдущая
НАЧАЛО
S = 0
i = 1, 5, 1
S = S + i
ВЫВОД: S
КОНЕЦ
НАЧАЛО
S = 0
i = 1
S = S + i
i = i + 1
да
i ≤ 5
нет
ВЫВОД: S
КОНЕЦ
Составить блок-схему алгоритма вычисления суммы всех двузначных нечетных чисел
НАЧАЛО
S = 0
K = 11
S = S + K
K = K + 2
Да
K ≤ 99
Нет
ВЫВОД : S
КОНЕЦ
Составить блок-схему алгоритма вычисления произведения P=1*2*3*…*n
Это произведение называется «факториал» и обозначается n!
НАЧАЛО
ВВОД: n
P = 1
i = 1
P = P * i
i = i + 1
да
i ≤ n
нет
ВЫВОД: P
КОНЕЦ