Основные типы и способы представления алгоритмов
Определение алгоритма. Алгоритм – конечная последовательность предписаний, однозначно определяющая процесс преобразования исходных и промежуточных данных в результат решения задачи.
Алгоритм дает точное описание способа решения задачи, устанавливающее состав операций и последовательность их выполнения.
Существуют следующие формы представления алгоритмов: словесная; графическая.
Словесная форма представления алгоритма используется для описания очень простых задач и на начальных стадиях разработки алгоритма. Словесная форма представления алгоритма имеет ряд недостатков. Для достаточно сложных алгоритмов описание становится слишком громоздким и ненаглядным.
Графическая форма представления алгоритмов является более компактной и наглядной. Алгоритм изображается в виде последовательности связанных между собой блоков, каждый из которых соответствует выполнению одного или нескольких операторов. Такое графическое представление называется структурной схемой алгоритма.
Условные графические обозначения символов, используемых для составления структурной схемы алгоритма, стандартизированы. Некоторые часто используемые обозначения приведены в табл. 1.
Отдельные блоки алгоритмов соединяются между собой линиями. Линии, идущие сверху вниз и слева направо, принимаются за основные и, если они не имеют изломов, стрелками не обозначаются.
Таблица 1
Блоки структурной схемы
Процесс (вычисления) | а | Решение (проверка условия) | a b | ||||||||||
Предопределенный процесс (подпрограмма) | 0.15a а b | Ввод-вывод | a b 0.25a | ||||||||||
Соединительные линии | Модификация (начало цикла) | a a b |
Продолжение табл. 1
Начало-конец | 0.5a B | Комментарии | a | ||||||||||
Внутри-страничный соединитель | 0.5a | Межстраничный соединитель | 0.5a 0.5a |
Примечание. Значение a принимается из ряда чисел 10; 15; 20… мм; b = 1,5 a.
Представление алгоритма в виде структурной схемы является промежуточным, так как алгоритм в таком виде не может быть непосредственно выполнен ЭВМ. Составление структурной схемы алгоритма является важным и в большинстве случаев необходимым этапом решения задачи на ЭВМ, значительно облегчающим процесс составления программ.
Алгоритм, записанный на языке программирования, называется программой.
Алгоритм любой сложности может быть представлен комбинацией трех базовых структур:
– линейные (следование);
– разветвляющиеся;
– циклические (повторение).
В линейном вычислительном процессе операторы выполняются в той последовательности, в которой они записаны.
Под оператором понимается формальная запись предписания для выполнения некоторой последовательности действий.
Разветвленная структура – в зависимости от выполнения некоторого условия выполняется та или иная последовательность операторов.
Циклическая структура – многократное выполнение одинаковой последовательности операторов.
Схемы алгоритмов. Для изображения схем алгоритмов разработан ГОСТ 19.701-90.
а б
в
Рис. 1. Базовые алгоритмические структуры: а – следование;
б – ветвление; в – цикл с предусловием
Любой, сколь угодно сложный, алгоритм можно представить с использованием трех основных конструкций, которые получили название базовых:
– следование. Обозначает последовательное выполнение действий (рис. 1, а);
– ветвление. Соответствует выбору одного из двух вариантов действий (рис. 1, б);
– цикл с предусловием. Определяет повторение действий, пока не будет нарушено некоторое условие, выполнение которого проверяется в начале цикла (рис. 1, в).
Помимо базовых, процедурные языки программирования высокого уровня обычно используют еще три конструкции, которые можно составить из базовых:
выбор. Обозначает выбор одного варианта из нескольких в зависимости от значения некоторой величины (рис. 2);
цикл с постусловием. Обозначает повторение некоторых действий до выполнения заданного условия, проверка которого осуществляется после выполнения действий в цикле (рис. 3);
– цикл с заданным числом повторений (цикл с параметром) (рис. 4).
Любая из дополнительных конструкций легко реализуется с помощью базовых. Перечисленные шесть конструкций были положены в основу структурного программирования.
Рис. 2. Структура алгоритма выбора
Рис. 3. Структура цикла с постусловием
Рис. 4. Структура цикла с заданным числом повторений
Дата добавления: 2017-01-29; просмотров: 1128;