Способы описания и виды алгоритмов

Download Report

Transcript Способы описания и виды алгоритмов

Способы описания
и виды алгоритмов
Учитель информатики и ИКТ
МОУ ООШ с. Солдатское
Щетинина Т.А.
09.04.2015
Способы описания алгоритмов:
• словесный;
• графический (блок-схемы);
• псевдокод;
• программа.
Словесная форма записи алгоритмов
обычно используется для алгоритмов,
ориентированных на исполнителячеловека. Команды такого алгоритма
выполняются в естественной
последовательности, если не оговорено
противного.
Алгоритм «Снеговик»
1. Слепить из снега большой шар и положить его на
землю.
2. Слепить второй шар, меньше первого, и положить его
на первый шар.
3. Слепить третий шар, меньше второго, и положить его
на второй шар.
4. Надеть ведро на третий шар.
5. Сделать глаза из угольков на третьем шаре.
6. Воткнуть между угольками нос.
Блок-схема представляет алгоритм в наглядной
графической форме. Команды алгоритма
помещаются внутрь блоков, соединенных
стрелками, показывающими очередность
выполнения команд алгоритма.
Псевдокод представляет собой систему
обозначений и правил, предназначенную для
единообразной записи алгоритмов. Он занимает
промежуточное место между естественным и
формальным языком.
Алг Переправа
нач
1.Перевезти козу
2. Возвратиться самому
3. Перевезти волка
4. Возвратиться вместе с козой
5. Перевезти капусту
6. Возвратиться самому
7. Перевезти козу
кон
Алгоритм, записанный на понятном
Программа "Снеговик"
REM Снеговик
компьютеру языке
SCREEN 1
программирования, называется
REM Снег
программой.
FOR i = 1 TO 300
PSET (RND * 640, RND * 480), 1
NEXT
REM Сугроб
FOR i = 1 TO 20
LINE (0 + 2 * i, y + 3 * r + 61 - i)-(640 - 2 * i, y + 3 * r + 61 - i), 1
NEXT
REM Тело снеговика
CIRCLE (x, y - 80), r - 20, c
CIRCLE (x, y), r, c
CIRCLE (x, y + 120), r + 20, c
CIRCLE (x - 52, y - 30), 10, c
CIRCLE (x + 52, y - 30), 10, c
PAINT (x, y - 80), c, c
PAINT (x, y), c, c
PAINT (x, y + 120), c, c
PAINT (x - 52, y - 30), c, c
PAINT (x + 52, y - 30), c, c
REM Оформление лица
CIRCLE (x - 15, y - 90), 2, 1
PAINT (x - 15, y - 90), 1, 1
CIRCLE (x + 15, y - 90), 2, 1
PAINT (x + 15, y - 90), 1, 1
CIRCLE (x, y - 80), 10, 4, , , .5
PAINT (x, y - 80), 4, 4
CIRCLE (x, y - 75), 20, 4, 4, 6, 0.5
END
В информатике чаще всего используется
графический способ описания алгоритмов –
с помощью
блок-схем.
Графическое изображение алгоритма
широко используется перед
программированием задачи вследствие
его наглядности, так как зрительное
восприятие облегчает процесс написания
программы, его корректировки при
возможных ошибках, осмысление
процесса обработки информации.
Стандартные графические объекты
блок-схем
блок начала или конца
алгоритма
блок ввода или вывода
блок присваивания
блок проверки условий
блок вспомогательного алгоритма
Виды алгоритмов
• Линейный.
• Разветвляющийся.
• Циклический.
это алгоритм, в котором
команды выполняются
последовательно одна за
другой.
Пример. Линейный
алгоритм встречаем в
сказке Шарля Перро
«Красная Шапочка».
Линейный
алгоритм поливки
цветов
1. Взять лейку с водой.
2. Подойти к цветам.
3. Полить цветы.
4. Убрать лейку на место.
Линейный алгоритм
открывания двери ключом
1. Достать ключ из кармана.
2. Вставить ключ в замочную скважину.
3. Повернуть ключ два раза против
часовой стрелки.
4. Вынуть ключ.
Линейный алгоритм
нахождения площади треугольника
в виде блок-схемы
начало
ввод: A, B, C
P=
S=
A  B C
2
P(P A)( P B)( PC)
вывод: S
конец
Запись линейного
алгоритма на
алгоритмическом языке
Алг название
Нач
серия команд
Кон
Запись линейного алгоритма в
виде блок-схемы
начало
действие 1
…
действие n
конец
Приведите, пожалуйста, еще
примеры линейного алгоритма
это алгоритм,
в котором в зависимости от условия
выполняется либо одна, либо другая
последовательность действий.
Пример. Разветвляющийся
алгоритм наблюдаем в поэме
А.С. Пушкина «Руслан и
Людмила».
У лукоморья дуб зелёный;
Златая цепь на дубе том:
И днём и ночью кот учёный
Всё ходит по цепи кругом;
Идёт направо - песнь заводит,
Налево - сказку говорит.
Разветвляющийся алгоритм кипячени
в виде блок-схемы
нач
Возьми чайник
Открой крышку
нет
Есть вода?
да
Закрой крышку
Включи газ
Поставь чайник на плитку
Дождись, пока вода закипит
Выключи газ
кон
Налей воды
Запись разветвляющегося
алгоритма на
алгоритмическом языке
Полная форма
ветвления
Алг название
Нач
…
если условие
то действие 1
иначе действие 2
всё
…
Кон
Неполная форма
ветвления
Алг название
Нач
…
если условие
то действие
всё
…
Кон
Запись разветвляющегося
алгоритма в виде блок-схемы
Неполная
форма
Полная
форма
Да
Действие 1
Условие
Нет
Действие 2
Да
Действие
Условие
Нет
Приведите, пожалуйста, еще
примеры разветвляющегося
алгоритма
это многократное повторение одних и тех
же действий при различных параметрах.
Пример. Циклический алгоритм
выполняет старик у А.С. Пушкина в
«Сказке о рыбаке и рыбке»
Циклический алгоритм решения задачи в
виде блок-схемы
Цикл с предусловием –
циклическая
алгоритмическая
конструкция, в которой
условие поставлено в
начале цикла.
нет
Условие
да
Действие
нет
Меньше 24.00 ?
да
Смотрю TV
конец
Цикл с постусловием –
циклическая
алгоритмическая
конструкция, в
которой условие
поставлено в конце
цикла
Действие
нет
Условие
да
конец
Точить карандаш
нет
Пустая коробка?
да
конец
Приведите, пожалуйста, еще
примеры циклического
алгоритма
Задание: составить
алгоритмы по заготовке.
1.Что нового мы изучили на уроке?
2.Как можно представить алгоритм?
3.Какие виды алгоритмов вы знаете?
4.Какой алгоритм называется
линейным?
5.Какой алгоритм называется
разветвляющимся?
6.Какой алгоритм называется
циклическим?
1) Выучить записи в тетрадях.
2) Придумать свои примеры на каждый
вид алгоритма и записать их в виде
блок-схемы.