Базовые управляющие структуры алгоритмов (основные алгоритмические конструкции)
Метод структурной алгоритмизации. Этот метод основан на визуальном представлении алгоритма в виде последовательности управляющих структурных элементов − управляющих структур. Принцип структурной алгоритмизации заключается в том, чтологическая структура любой программы может быть выражена комбинацией из следующих базовых структур:
1) Композиция (следование);
2) Альтернатива (ветвление);
3) Итерация[2] (цикл).
Структурная блок-схема−композиция из базовых алгоритмических структур.
Примем следующие обозначения: S1 и S2 представляют собой в общем случае операции, группы операций или алгоритмические структуры (базовые управляющие структуры) для соответствующего исполнителя, В – это условие, в зависимости от истинности (true) или ложности (false) которого управление передаётся по одной из двух ветвей.
Композиция, или следование − это линейная конструкция алгоритма, составленная из последовательно следующих друг за другом функциональных вершин (рис. 9.2).
Операции, группы операций или базовые структуры алгоритмов выполняются последовательно друг за другом.
![](https://konspekta.net/pdnrru/baza1/13107020352.files/image150.gif)
Рис. 9.2. Базовая управляющая структура «следование»
Альтернатива, или ветвление – это конструкция ветвления, имеющая предикатную вершину.
Структура обеспечивает выбор между двумя альтернативами: если B – ИСТИНА (TRUE) (не равно нулю), то выполняется структура S1; если B – ЛОЖЬ (FALSE) – структура S2 (рис. 9.3). При этом происходит разветвление алгоритма.
Если в структуре «Ветвление» отсутствует операция, группа операций или алгоритмическая структура S2, которую необходимо выполнить при ложности выражения B, получается сокращённая форма структуры «Ветвление» (рис. 9.4), которую ещё называют структурой «Обход».
|
| Рис. 9.3. Базовая управляющая структура «Ветвление»
| Рис. 9.4. Сокращённая форма
структуры «Ветвление»
|
Итерация, или циклы – это циклическая конструкция алгоритма, состоящая из композиции и альтернативы.
Алгоритмическая структура (базовая управляющая структура) «Итерация, или цикл» может быть представлена в двух формах: с предусловием (рис. 9.5) и с постусловием (рис. 9.6).
Цикл представляет собой повторное выполнение определённого набора действий при выполнении некоторого условия. Именно циклы позволяют записывать длинные последовательности операций небольшим числом команд.
В цикле с постусловием типа «ДО»(рис. 9.5) проверка условия выхода из цикла выполняется после очередного действия. Цикл«ДО»выполняется до тех пор, пока условие не станет истинным.
На рисунке 9.6 показан цикл типа«ПОКА» с предусловием. Действия внутри этого цикла повторяются, пока выражение B в блоке ветвления истинно, причём сначала проверяется условие, а затем выполняется действие S.
Обязательными блоками в этих структурах являются: установка начального значения параметра; проверка условия достижения конечного значения параметра; изменение параметра. Отличаются они способом проверки окончания цикла.
Цикл типа«ДЛЯ», или цикл с параметром (рис. 9.7) является модификацией цикла «ПОКА» для ситуации, когда заранее известно количество повторений некоторых действий. Все три необходимых блока собираются в один, в котором указывается начальное, конечное значение параметра и шаг изменения. Запись в блоке заголовка цикла на рисунке 9.7 показывает пример описания заголовка цикла, в котором действия повторяются столько раз, сколько целых значений приобретает параметр цикла i от своего начального значения iн до конечного iк с шагом iш. Шаг не указывается, если он равен 1.
|
|
| Рис. 9.5. Структура «ЦИКЛ-ДО» (цикл с постусловием)
| Рис. 9.6. Структура «ЦИКЛ-ПОКА»(цикл с предусловием)
| Рис. 9.7. Цикл с параметром (использование символа «подготовка»)
|
В соответствии с наличием в алгоритмах управляющих структур композиции, альтернативы и итерации алгоритмы классифицируют: на линейные, разветвлённые и циклические алгоритмы.
|