Основные алгоритмические конструкции
Для записи любого алгоритма достаточно трёх основных алгоритмических конструкций:
- следования,
- ветвления,
- Повторения.
( Э. Дейкстра )
Эдсгер Вибе Дейкстра (1930–2002). Выдающийся нидерландский учёный, идеи которого оказали огромное влияние на развитие компьютерной индустрии.
Следование
Следование - алгоритмическая конструкция, отображающая естественный, последовательный порядок действий.
Алгоритмы, в которых используется только структура «следование», называются линейными алгоритмами .
Действие 1
Действие 2
Алгоритмическая структура «следование»
Линейный алгоритм приготовления отвара шиповника
Начало
Столовую ложку сушёных плодов
шиповника измельчить в ступке
Залить стаканом кипячёной воды
Кипятить 10 минут на слабом огне
Охладить
Процедить
Конец
Линейный алгоритм для исполнителя Робот
СКИ исполнителя Робот: вверх , вниз , влево , вправо и закрасить .
алг узор
нач
закрасить
вправо
вправо
закрасить
вниз
влево
закрасить
вверх
влево
кон
Вычисления по алгоритму
Алгоритм
Шаг алгоритма
Переменные
x
1
y
2
s
3
4
5
х:= 2
у:=х*х
у:=у*у
х:=у*х
s:=x+y
2
-
-
4
2
-
-
2
16
16
-
32
48
16
32
Ответ : s = 48
Самое главное
Для записи любого алгоритма достаточно трёх основных алгоритмических конструкций (структур): следования, ветвления, повторения.
Следование - алгоритмическая конструкция, отображающая естественный, последовательный порядок действий.
Алгоритмы, в которых используется только структура «следование», называются линейными .
Ветвление
Ветвление - алгоритмическая конструкция, в которой в зависимости от результата проверки условия («да» или «нет») предусмотрен выбор одной из двух последовательностей действий (ветвей).
Алгоритмы, в основе которых лежит структура «ветвление», называют разветвляющимися.
Полная форма ветвления
если
то
иначе
все
Условие
Действие 1
Действие 2
Пример
алг правописание частиц НЕ, НИ
нач
если частица под ударением
то писать НЕ
иначе писать НИ
все
кон
Сокращённая форма ветвления
если
то
все
Условие
Действие 1
Пример:
алг сборы на прогулку
нач
если на улице дождь
то взять зонтик
все
кон
B А больше В A = B А больше или равно В A B А не равно В " width="640"
Операции сравнения
A B
А меньше В
A B
А меньше или равно В
A = B
А равно В
A B
А больше В
A = B
А больше или равно В
A B
А не равно В
0 Y:=-X Y:=X Y Конец " width="640"
Вычисление функции f( x ) =| x |
Начало
Список данных
X, Y - вещ
Х
да
нет
Х 0
Y:=-X
Y:=X
Y
Конец
=A) and (Xнет да НЕТ ДА Ответ : Не принадлежит Ответ : Принадлежит A=2 X=4 B=6 B=4 X=6 " width="640"
Простые и составные условия
Простые условия состоят из одной операции сравнения. Составные условия получаются из простых с помощью логических связок and ( и ), or ( или ), not ( не ).
Пример. Алгоритм определения принадлежности точки Х отрезку [ A; B ].
A, B, X
(X=A) and (X
нет
да
НЕТ
ДА
Ответ : Не принадлежит
Ответ : Принадлежит
A=2
X=4
B=6
B=4
X=6
Y B Y Y = B Y = A Y:=A Шаг Константы А В 10 1 С 2 Переменная 30 Условие Y 20 3 4 нет да BY Y:=B 10 30 10 (Да) да нет CY 30 20 30 (Нет) Y:=C Ответ : Y = 30 " width="640"
Наибольшая из 3-х величин
Переменной Y присваивается значение большей из трёх величин A , B и C .
C Y
B Y
Y = B
Y = A
Y:=A
Шаг
Константы
А
В
10
1
С
2
Переменная
30
Условие
Y
20
3
4
нет
да
BY
Y:=B
10
30 10 (Да)
да
нет
CY
30
20 30 (Нет)
Y:=C
Ответ : Y = 30
Разветвляющийся алгоритм для Робота
В какую клетку переместится Робот после выполнения следующего фрагмента алгоритма.
если справа свободно или снизу свободно
то закрасить
все
если справа стена
то влево
все
если слева стена
то вправо
все
б
а
Самое главное
Для записи любого алгоритма достаточно трёх основных алгоритмических конструкций (структур): следования, ветвления, повторения.
Ветвление - алгоритмическая конструкция, в которой в зависимости от результата проверки условия (да или нет) предусмотрен выбор одной из двух последовательностей действий (ветвей).
Алгоритмы , в основе которых лежит структура «ветвление», называют разветвляющимися .
Опорный конспект
Ветвление - алгоритмическая конструкция, в которой в зависимости от результата проверки условия (да или нет) предусмотрен выбор одной из двух последовательностей действий (ветвей).
Алгоритмы , в основе которых лежит структура «ветвление», называют разветвляющимися .
Условие
Условие
Действие 1
Действие 2
Действие 1
Сокращённая форма ветвления
Полная форма ветвления
Повторение
Повторение - последовательность действий, выполняемых многократно.
Алгоритмы , содержащие конструкцию повторения, называют циклическими или циклами .
Последовательность действий, многократно повторяющаяся в процессе выполнения цикла, называется телом цикла .
Типы циклов
Могут быть
Заданы условия
продолжения работы
Заданы условия
окончания работы
Пока есть кирпич
Пока не наступит ночь
Задано число
повторений
Ровно 100 кирпичей
Цикл с заданным условием продолжения работы
(цикл-ПОКА, цикл с предусловием)
нц пока
кц
нет
Условие
да
Тело цикла
Погрузка кирпичей
алг погрузка
нач
нц пока есть кирпичи
взять один кирпич
если кирпич целый
то положить кирпич в машину
иначе отложить кирпич в сторону
все
кц
кон
Робот в коридоре
Правее Робота расположен коридор неизвестной длины. Необходимо, чтобы Робот закрасил все клетки этого коридора .
нц пока справа свободно
вправо
закрась
кц
Цикл с заданным условием окончания работы
(цикл-ДО, цикл с постусловием)
Тело цикла
Условие
да
нет
Запись на алгоритмическом языке:
нц
кц при
Цикл с постусловием
Пример. Алгоритм по выучиванию наизусть четверостишия.
алг четверостишие
нач
нц
прочитать четверостишие по книге 1 раз
рассказать четверостишие
кц при не сделал ошибку
кон
Вычисление переменной b
Начало
Список данных
a, b - цел
a := 1
b := 1
a := a *2
b := b + a
a = 8
да
b
нет
Конец
Самое главное
Для записи любого алгоритма достаточно трёх основных алгоритмических конструкций (структур): следования, ветвления, повторения.
Повторение - алгоритмическая конструкция, представляющая собой последовательность действий, выполняемых многократно.
Алгоритмы, содержащие конструкцию «повторение», называют циклическими или циклами .
Последовательность действий, многократно повторяющаяся в процессе выполнения цикла, называется телом цикла .
В зависимости от способа организации повторений различают три типа циклов:
1) цикл с заданным условием продолжения работы;
2) цикл с заданным условием окончания работы;
3) цикл с заданным числом повторений.
Источники информации
- http://school-sector.relarn.ru/dckt/projects/kolobok3/3road.jpg - развилка дорог
- http://img-fotki.yandex.ru/get/4608/sovaryaz-sova.1/0_5c8b9_728f857d_L - развилка дорог
- http://wallpaper.goodfon.ru/image/101271-800x600.jpg - дождь
- http://wiki.vspu.ru/_media/workroom/ikto/m5/tatiana_du/0004-007-razrjady-chastits.png - Незнайка
- http://www.shemetov.ru/images/consult.jpg - сравнение


Алгоритмические конструкции (1.69 MB)

