Структура алгоритма (линейная разветвляющаяся)

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

 
 
S

Структура алгоритма (линейная разветвляющаяся) - student2.ru Структура алгоритма (линейная разветвляющаяся) - student2.ru Вход Выход

Рис. Функциональный блок

В Основу структурного программирования положены принципы системного подхода при разработке, тестировании, оформлении и эксплуатации алгоритмов и программ. Суть структурного программирования в основном определяется теоремой о структурировании. В ней утверждается, что какой бы сложности ни была задача алгоритм ее решения, в конечном счете всегда может быть представлен совокупностью базовых функциональных блоков, каждый из которых определяет одну из трех элементарных управляющих структур. К элементарным базовым структурам относятся следующие структуры: следования (линейная), выбора (разветвления) и повторения (циклическая).

Одной из основных идей структурного программирования является поэтапная система разработки алгоритмов и программ с различной степенью детализации на каждом этапе от самой общей в виде совокупности блоков - отдельных подзадач до конкретной с возможностью непосредственной реализации на ЭВМ.

Линейная структура

Линейной называется структура, в которой передача управления осуществляется последовательно по цепочке от одного функционального блока к следующему (рис. 3).

Структура алгоритма (линейная разветвляющаяся) - student2.ru Структура алгоритма (линейная разветвляющаяся) - student2.ru

Рис. Схема линейной структуры

Каждый блок, в зависимости от степени детализации, может представлять собой последовательность более простых действий и наоборот, Последовательность блоков всегда может быть заменена одним функциональным блоком.

Разветвляющаяся структура

Разветвляющейся называется структура, обеспечивающая воз­можность выбора функционального блока, которому должно быть передано управление в зависимости от выполнения или не выполнения некоторого условия:

Структура алгоритма (линейная разветвляющаяся) - student2.ru

Рис. Схема структуры разветвления

Структура алгоритма (линейная разветвляющаяся) - student2.ru При входе в блок данной структуры анализируется логическое условие, значением которого может быть либо истина, либо ложь. В случае истинного значения (направление да), управление передается блоку S1, в противном случае (направление нет) - блоку S2, если разветвление полное и никакого действия, если разветвление неполное.

7Структура алгоритма (циклическая)

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

 
 
S

Структура алгоритма (линейная разветвляющаяся) - student2.ru Структура алгоритма (линейная разветвляющаяся) - student2.ru Вход Выход

Рис. Функциональный блок

В Основу структурного программирования положены принципы системного подхода при разработке, тестировании, оформлении и эксплуатации алгоритмов и программ. Суть структурного программирования в основном определяется теоремой о структурировании. В ней утверждается, что какой бы сложности ни была задача алгоритм ее решения, в конечном счете всегда может быть представлен совокупностью базовых функциональных блоков, каждый из которых определяет одну из трех элементарных управляющих структур. К элементарным базовым структурам относятся следующие структуры: следования (линейная), выбора (разветвления) и повторения (циклическая).

Одной из основных идей структурного программирования является поэтапная система разработки алгоритмов и программ с различной степенью детализации на каждом этапе от самой общей в виде совокупности блоков - отдельных подзадач до конкретной с возможностью непосредственной реализации на ЭВМ.

Циклическая структура

Циклическая структура используется для обозначения многократно повторяющегося действия - цикла. Условие выхода из цикла может находиться вначале цикла (цикл с предусловием) или в конце его (цикл с постусловием).

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

Структура алгоритма (линейная разветвляющаяся) - student2.ru Структура алгоритма (линейная разветвляющаяся) - student2.ru

Рис. Схема циклической структуры

В цикле с предусловием сначала проверяется условие и если оно истинно, то управление передается функциональному блоку S1, после этого осуществляется возврат к условию, если ложно - происходит выход из цикла. Поэтому в цикле с предусловием функциональный блок 5; выполняться не будет (ни разу), если при первой же проверке условие окажется ложным.

Наши рекомендации