На практике наиболее распространены следующие формы представления алгоритмов:
- Словесная – запись на естественном языке;
- в псевдокодах – полуформализованное описание алгоритма на условном алгоритмическом языке, включающее в себя как элементы языка программирования, так и фразы естественного языка, общепринятые математические обозначения и т.д.;
- табличная;
- графическая – с помощью графических символов;
- программная – запись на искусственном языке (языке программирования).
Словесный способ не имеет широкого применения по следующим причинам:
· Описания не строго формализуемы;
· Страдают многословностью записей;
· Допускают неоднозначность толкования отдельных предписаний.
Псевдокод представляет собой систему обозначений и правил, предназначенную для единообразной записи алгоритмов. Единого или формального определения псевдокода не существует, поэтому возможны различные псевдокоды, отличающиеся набором служебных слов и основных(базовых конструкций).
Графическое представление алгоритма является наиболее компактным и наглядным по сравнению со словесным и псевдокодами. При графическом представлении алгоритм изображается в виде последовательности связанных между собой функциональных блоков, каждый из которых соответствует выполнению одного или нескольких действий. Такое графическое представление называется схемой алгоритма или блок-схемой. В блок-схеме каждому типу действий (вводу исходных данных, вычислению значений выражений, проверке условий, управлению повторением действий, окончанию обработки и т.п.) соответствует геометрическая фигура, представленная в виде блочного символа.
Блочные символы соединяются линиями переходов, определяющими очередность выполнения действий. В таблице 1 приведены наиболее часто употребляемые символы.
Таблица 1. Графические символы алгоритмов
Название символа | Обозначение | Пояснение |
Процесс | Вычислительное действие или последовательность действий | |
Решение | Проверка условий | |
Модификация | Начало цикла | |
Предопределенный процесс | Вычисления по подпрограмме, стандартной подпрограмме | |
Ввод/Вывод | Ввод/Вывод данных в общем виде | |
Пуск - Останов | Начало, конец алгоритма, вход в подпрограмму и выход из нее | |
Документ | Вывод результатов на печать |
Блок «процесс» применяется для обозначения действия или последовательности действий, изменяющих значение, форму представления или размещения данных. Иногда для улучшения наглядности схемы несколько отдельных блоков объединяют в один блок.
Блок «решение» используется для обозначения переходов управления по условию. В каждом таком блоке должны быть указаны вопрос, условие или сравнение, которые он определяет.
Блок «модификация - видоизменение, преобразование» используется для организации циклических структур. Внутри блока записывается параметр цикла, для которого указывается его начальное значение, граничное условие и шаг изменения параметра цикла для каждого повторения.
Блок «предопределенный процесс» служит для указания обращений к вспомогательным алгоритмам, существующим автономно в виде некоторых самостоятельных модулей, и для обращения к библиотечным подпрограммам.