Структурные схемы алгоритмов

Ранее вместо термина «Структурная схема алгоритма» использовался термин «Блок-схема», однако, из новых государственных стандартов данный термин исключен. В различной литературе может встречаться и новый и старый термин, что не меняет сути вопроса.

Запись алгоритмов в виде структурной схемы обладает большой наглядностью. Хорошо просматривается структура алгоритма. Структурная схема представляет собой соединенные линиями блоки различной конфигурации. Вид блоков и последовательность их соединения соответствуют типу и последовательности действий алгоритма.

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

Таблица 1 – Основные правила и обозначения, используемые при построении структурных схем алгоритмов

 

Правила и обозначения Пояснение
Блок начала и конца алгоритма. В данном блоке пишут слова «начало» или «конец».
Блок ввода и вывода.В блоке ввода перечисляют имена данных, подлежащих вводу в алгоритм, в блоке вывода – выводу из алгоритма.
Блок модификации, изменения параметра. Используется для организации циклических операций в алгоритме. Верхний блок – начало цикла. В начале цикла указывается название цикла, условие входа в цикл, диапазон изменения параметра цикла. Нижний блок – конец цикла. В блоке конца цикла указывается условие выхода из цикла и название цикла.
Блок процесса решения задачи. В данном блоке указывают действия, которые необходимо выполнить для решения задачи.
Блок выбора решения. Проверяет выполнение какого либо условия, которое записывается в данный блок. Условие ставится таким образом, чтобы результатом работы алгоритма в данной части являлось либо отрицательное решение (нет) либо положительное (да). Неоднозначность в данном случае недопустима.
Соединительная линия между блоками. Определяет логический порядок и связь между блоками структурной схемы алгоритма.
Соединительная линия со стрелкой. Используется, как правило, при соединении блоков структурной схемы алгоритма, в том случае, когда переход неочевидный или непоследовательный.
Блок перехода на страницу. В случае использования громоздкого алгоритма возможно размещение его структурной схемы на различных страницах учетной документации. В этом случае в местах разрыва структурной схемы алгоритма используется блок перехода на страницу с указанием номера страницы.
Блок перехода на странице. В случае использования громоздкого алгоритма возможно более компактное размещение его структурной схемы на странице учетной документации. В этом случае в местах разрыва структурной схемы алгоритма используется блок перехода на странице с указанием соответствующего идентификатора. В качестве идентификатора в блоке указывается заглавная буква латинского алфавита.
Пояснения к блокам структурной схемы.Как правило, вынос пояснений осуществляется вправо от блока структурной схемы алгоритма.
Нумерация блоков(необязательно). Номер блока проставляется над левым верхнем углом блока. Начало и конец алгоритма не номеруется. Две части блока модификации, изменения параметра нумеруются одинаковой цифрой.
     

ЛИНЕЙНЫЕ АЛГОРИТМЫ

Составим структурную схему линейного алгоритма.

Пример 20

Необходимо найти значение функции . Построим структурную схему алгоритма решения задачи (рисунок 25).

Рисунок 25 – Структурная схема линейного алгоритма

В блоке 1 происходит ввод начальных данных, а именно, задание переменной . В блоке 2 алгоритма производится расчет приведенного выражения. Блок 3 указывает на вывод значения рассчитанного параметра алгоритма.

ВЕТВЯЩИЕСЯ АЛГОРИТМЫ

Составим структурную схему ветвящегося алгоритма.

Пример 21

Значение функции вычисляется по двум различным формулам в зависимости от значения аргумента :

, ;

, .

Построим структурную схему алгоритма решения задачи (рисунок 26).

Рисунок 26 – Структурная схема ветвящегося алгоритма

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

ЦИКЛИЧЕСКИЕ АЛГОРИТМЫ

Составим структурную схему циклического алгоритма.

Пример 22

Необходимо вычислить сумму нечетных чисел от 1 до .

Формализация задачи следующая. Обозначим: - искомый результат;

- переменная, которая принимает значения целых нечетных чисел (); Будем использовать переменную в качестве параметра цикла.

Для накопления суммы применим формулу .

Построим структурную схему алгоритма решения задачи (рисунок 27).

Рисунок 27 – Структурная схема циклического алгоритма

Из рисунка 27 видно, что блок, отвечающий за формирование цикла, состоит из двух частей, которые номеруются по ходу алгоритма одной цифрой. В первой части блока 3 указывается название цикла, начальное значение переменной цикла и условие входа в цикл. Во второй части блока 3 указывается условие выхода из цикла и название цикла. Название цикла необходимо, т.к. в некоторых алгоритмах могут присутствовать вложенные циклы. Кроме этого, на рисунке 27 показан пример использования поясняющих записей.