В информатике сложились вполне определенные традиции в представлении алгоритмов, рассчитанных на различных исполнителей. Средства, используемые для записи алгоритмов, в значительной степени определяются тем, для какого исполнителя предназначается алгоритм.
Если алгоритм предназначен для исполнителя — человека, то его запись может быть не полностью формализована, на первое место здесь выдвигаются понятность и наглядность, поэтому для записи таких алгоритмов может использоваться естественный или графический язык, лишь бы запись отражала все основные особенности алгоритма. Для записи алгоритмов, предназначенных для исполнителей — автоматов, необходима формализация, поэтому в таких случаях применяют специальные формальные языки.
Рассмотрим основные средства, используемые для записи алгоритмов.
Словесная запись алгоритма
Словесная форма обычно используется для алгоритмов, ориентированных на исполнителя – человека. Команды алгоритма нумеруют, чтобы иметь возможность на них ссылаться.
|
|
Пример словесной формы записи алгоритма классический алгоритм Евклида для нахождения наибольшего общего делителя двух натуральных чисел:
Если числа равны, то взять первое число в качестве ответа и закончить исполнение алгоритма, иначе перейти к п. 2.
Определить большее из двух чисел.
Заменить большее число на разность большего и меньшего чисел.
Перейти к п. 1.
Команды такого алгоритма выполняются в естественной последовательности. Так, после второй команды будет выполняться третья, после третьей – четвертая, а вот после четвертой команды необходимо вернуться снова к выполнению первой команды, так как это явно оговорено в четвертой команде. Команды такого типа (команды перехода) нарушают естественный порядок выполнения команд алгоритма.
Форма записи команд не формализуется. В командах помимо слов могут использоваться символы и формулы. Важно лишь то, чтобы каждая команда была понятна исполнителю, точно определяла все его действия и могла бы быть им выполнена.