Базовые алгоритмические конструкции

Для выполнения типичных последовательностей действий в алгоритме разрабо­таны базовые алгоритмические конструкции в виде определенного набора блоков и стандартных средств их соединения. К базовым алгоритмическим конструкциям относятся линейные, разветвляющиеся и циклические.

Линейный алтрящ^^

друг за другом* \-> , V

Пример линейного алгоритма приведен на рис. 14.10.

( Начало )

I Ввод А В

X=A* В

IВывод А, В

( Конец ^ Рис. 14.10. Линейный алгоритм

В отличие от линейных алгоритмов, в которых команды выполняются после­довательно одна за другой, в разветвляющиеся алгоритмы входит условие, в за­висимости от выполнения или невыполнения которого выполняется та или иная последовательность команд (действий). Пример разветвляющегося алгоритма приведен на рис. 14.11.

Разввтти>щийш&г0т*ш~~ жцтгърмт,,в котором действия выполняются по сщйойШ| возможных ветвей рёшениязадачй g швадоимосги от выполнения условий. /Vff


В качестве условия в разветвляющемся алгоритме может быть использовано любое понятное исполнителю утверждение, которое может соблюдаться (быть истинным) или не соблюдаться (быть ложным). Такое утверждение может быть выражено как словами, так и формулой. Таким образом, алгоритм ветвления со­стоит из условия и двух последовательностей команд.

( Начало )
   
X = > 4 * В
   
X = A +В
j Вывод А, В j ( Конец ) Рис. 14.11. Разветвляющийся алгоритм ГТг \ Вычисление С Начало > —- /71 = 1-2-... /1 Рис. 14.12. Алгоритм с циклическим элементом

Многократные повторения одних и тех же действий обеспечиваются при помо­щи циклических алгоритмов (рис. 14.12). В цикл входят в качестве составляющих элементов блок проверки условия и блок, называемый телом цикла. Перед началом цикла осуществляются операции присваивания начальных значений тем объектам, которые используются в теле цикла.


 

Слово «многократно» в определении циклического алгоритма не значит «до бесконечности». Организация циклов, не приводящих к остановке в выполнении алгоритма, является нарушением требования его результативности — получения результата за конечное число шагов.

Если тело цикла расположено после проверки условий (цикл с предусловием), то при определенных условиях тело цикла не выполнится ни разу. Такой вариант организации цикла, управляемый предусловием, называется циклом с предусловием (рис. 14.13).

а) Общее обозначение б) Реализация

по ГОСТ 19.701-90

Рис. 14.13. Цикл с предусловием

 

Другой вариант построения цикла состоит в том, что тело цикла выполняется по крайней мере один раз, и будет повторяться до тех пор, пока условие не станет истинным. Такая организация цикла, когда его тело расположено перед проверкой условия, носит название цикла с постусловием (рис. 14.14). Истинность условия в этом случае является условием выхода из цикла.

а) Общее обозначение б) Реализация

по ГОСТ 19.701-90

Рис. 14.14. Цикл с постусловием

 

Таким образом, цикл с предусловием завершается, когда условие ложно, а цикл с постусловием — когда условие становится истинным.

Третий тип циклов, в которых тело цикла выполняется заданное число раз (то есть еще до начала выполнения цикла точно известно, сколько раз он будет выпол­нен), реализуется с помощью счетчика. В цикле со счетчиком значения счетчика в теле цикла итеративно увеличиваются.

Процесс решения сложной задачи довольно часто сводится к решению несколь­ких более простых задач методом последовательной детализации. Соответственно, процесс разработки сложного алгоритма может разбиваться на этапы составления отдельных алгоритмов, которые называются вспомогательными. Каждый такой вспомогательный алгоритм описывает решение какой-либо подзадачи.

Процесс построения алгоритма методом последовательной детализации состоит в следующем. Сначала алгоритм формулируется в «обобщающих» блоках, которые могут быть непонятны исполнителю и записываются, как вызовы вспомогательных алгоритмов. Затем происходит детализация, и все вспомогательные алгоритмы детализируются до уровня команд, понятных исполнителю.








Дата добавления: 2016-04-14; просмотров: 1541;


Поиск по сайту:

При помощи поиска вы сможете найти нужную вам информацию.

Поделитесь с друзьями:

Если вам перенёс пользу информационный материал, или помог в учебе – поделитесь этим сайтом с друзьями и знакомыми.
helpiks.org - Хелпикс.Орг - 2014-2024 год. Материал сайта представляется для ознакомительного и учебного использования. | Поддержка
Генерация страницы за: 0.006 сек.