Виды алгоритмов

advertisement
Виды алгоритмов
Виды алгоритмов
Существует 4 вида алгоритмов:
• линейный,
• циклический,
• разветвляющийся,
• вспомогательный.
Линейный алгоритм
Линейный (последовательный) алгоритм —
описание
действий,
которые
выполняются
однократно в заданном порядке.
Линейными
являются
алгоритмы
отпирания
дверей, заваривания чая, приготовления одного
бутерброда.
Линейный алгоритм применяется при вычислении арифметического выражения, если
в нем используются только
действия сложения и вычитания.
Линейный алгоритм
Требуется составить алгоритм
вычисления результата выражения:
100+15-40+20:
1.Сложить числа 100 и 15.
2.Из полученной суммы вычесть 40.
3.К результату прибавить 20.
В этом примере действия выполняются в
том порядке, в котором написаны.
Циклический алгоритм
Многие процессы в окружающем мире
основаны на многократном повторении одной и
той же последовательности действий. Каждый
год наступают весна, лето, осень и зима.
Жизнь
растений
в
течение года проходит
одни и те же циклы.
Подсчитывая число полных поворотов минутной
или часовой стрелки,
человек измеряет время.
Алгоритм «Подъем по лесенке»
Начало
Повторять 15 раз
Подняться на 1 ступеньку
Все
Конец
Алгоритм «Украшение елки»
Начало
Взять коробку с елочными шарами
Повторять пока в коробке есть шары
Взять шар
Повесить шар на елку
Все
Конец
Циклический алгоритм
Циклический алгоритм — описание
действий, которые должны повторяться
указанное число раз или пока не
выполнено заданное условие.
Перечень
повторяющихся
называется телом цикла.
действий
Типы циклов
Цикл с известным
числом повторений
Цикл с неизвестным
числом повторений
Цикл ДЛЯ
Цикл
Цикл
с постусловием с предусловием
Цикл ПРИ
Цикл ПОКА
Разветвляющийся алгоритм
Цикл с известным числом
повторений
Алгоритм «Упражнение для глаз»
1. Возьмите карандаш.
2. Установите его в исходное положение у
кончика носа.
3. Повторите 10 раз, следя за движением
карандаша:
а. Переместите карандаш на расстояние вытянутой
руки;
b. Верните карандаш в исходное положение.
4.Положите карандаш.
Конец алгоритма
Типы циклов
Цикл с постусловием
Алгоритм «Пульс»
1. Удобно положите левую руку ладонью
вверх.
2. Два пальца правой руки положите на
запястье левой руки.
3. Заметьте положение секундной стрелки.
4. Сосчитайте очередной удар.
5. Посмотрите на часы.
6. Если секундная стрелка прошла полный
круг, то закончите действия, иначе перейдите
к п. 4.
Конец алгоритма
дальше
Цикл с постусловием
Начало
Сосчитайте удар
Посмотрите на часы
Круг пройден?
Нет
Да
Конец
Типы циклов
Цикл с предусловием
Алгоритм «Бочка»
1. Подойдите к бочке.
2. Если бочка неполная (есть место для воды),
то перейдите к п. 3, иначе конец алгоритма.
3. Наберите ведро воды.
4. Вылейте ведро в бочку.
5. Перейдите к п. 2.
Конец алгоритма
дальше
Цикл с предусловием
Начало
Бочка полна?
Да
Конец
Нет
Наберите ведро воды
Вылейте воду в бочку
Типы циклов
Разветвляющийся алгоритм
Примеры
разветвляющих
алгоритмов:
если
пошел
дождь, то надо открыть зонт;
если болит горло, то прогулку
следует отменить; если билет
в кино стоит не больше десяти
рублей, то купить билет и
занять свое место в зале,
иначе (если стоимость билета
больше 10 руб.) вернуться
домой.
Разветвляющийся алгоритм
Если пошел дождь, то
надо открыть зонт.
Условие
«пошел
дождь»
может быть и истинным, и
ложным.
Поэтому
в
конкретной
ситуации
предполагается
либо выполнение действия
«открыть зонт», либо его
пропуск – если дождя нет, то
зонт открывать незачем.
Разветвляющийся алгоритм
Условие
—
выражение,
находящееся между словом «если»
и словом «то» и принимающее
значение «истина» или «ложь».
Разветвляющийся алгоритм
Разветвляющийся
алгоритм
—
алгоритм, в котором в зависимости от
условия выполняется либо одна, либо
другая последовательность действий.
Разветвляющийся алгоритм
В общем случае схема разветвляющего
алгоритма будет выглядеть так: «если условие,
то..., иначе...». Такое представление алгоритма
получило название полной формы.
Идет направо –
песнь заводит,
налево – сказку
говорит…
Разветвляющийся алгоритм
Если гриб съедобный, то положить его в
котелок для варки, иначе – выбросить в
костер.
Начало
Да
Съедобный?
Положить
в котелок
Нет
Выбросить
в костер
Конец
Разветвляющийся алгоритм
Неполная форма, в которой действия
пропускаются: «если условие, то...».
Если бензин
закончился, то
заехать на
ближайшую
заправочную
станцию.
Разветвляющийся алгоритм
Если костер горит, то необходимо залить
его водой.
Начало
Горит?
Нет
Конец
Да
Залить
водой
Вспомогательный алгоритм
Например: вы в детстве учились суммировать
единицы, затем десятки, чтобы суммировать
двузначные числа содержащие единицы вы не
учились новому методу суммирования, а
воспользовались старыми методами.
Вспомогательный алгоритм
Вычислить выражение а×5+b/4.
1. Ввести число, соответствующее
переменной а.
2. Выполнить умножение чисел а×5 и
записать произведение.
3. Ввести число ,соответствующее
переменной b.
4. Выполнить деление чисел - b/4 и записать
частное.
5. Выполнить сложение полученных на шаге 2
произведения и на шаге 4 частного.
Вспомогательный алгоритм
Арифметические
действия
(умножение,
деление,
сложение)
выполняются
по
алгоритмам, которым научили в младших
классах. Поняв и запомнив их, мы используем
их как вспомогательные.
Итоговый алгоритм выглядит как связанные
между собой вспомогательные алгоритмы,
представленные своими именами. Описания
этих алгоритмов хранятся отдельно.
Вспомогательный алгоритм
Вспомогательный алгоритм —
алгоритм, который можно использовать в
других алгоритмах, указав только его имя
Download