Текст алгоритму став компактнішим. Однак, тепер для того, щоб його прочитати і зрозуміти, від читача потрібна спеціальна підготовка: він має знати правила запису та інтерпретації (тлумачення) і звикнути до них.
Розглянемо тепер ті команди, що ми використовували вперше. По-перше, це команда
Якщо D < 0
то (Відповідь := “Рішень немає”; Перейти 1);
Ця команда має наступну загальну форму запису:
Якщо <умова>
то (<послідовність команд>)
Виконуючи цю команду, Виконавець перевіряє, чи виконано умову, зазначену після службового слова Якщо. Якщо умова виконана, Виконавець переходить до виконання послідовності команд, що стоїть після слова то й взята в дужки. Якщо ж умова не виконана, Виконавець переходить до виконання наступної команди. Порівняйте цю команду з командою розгалуження, що ми використовували в алгоритмі Евкліда (приклад 1.3) і Ви побачите, що вона є спрощеним варіантом розгалуження – неповним розгалуженням.
Команди розгалуження дозволяють направити виконання алгоритму по тому або іншому шляху в залежності від виконання умови. Такі команди називають командами вибору.
Команди вибору містять в собі інші команди, що виконуються в залежності від результатів перевірки умов.
При записі команди розгалуження звичайно використовують правило структурування, що представлено вище, або схоже правило
Якщо <умова> то
(<послідовність команд>)
Повне розгалуження структурують звичайно так:
Якщо <умова> то
(<послідовність команд>)
Інакше
(<послідовність команд>)
Другою характерною командою в прикладі є команда переходу Перейти 1. Вона має форму запису
Перейти <N>,
причому число N використовується в записі алгоритму як спеціальна мітка тієї команди, яку потрібно виконати наступною.
У нашому прикладі використовуються команди переходу Перейти 1, а міткою 1 позначена команда 1:Кінець.
Виконання команди переходу полягає в тому, що Виконавець переходить до виконання команди, позначеної міткою N (порушуючи при цьому природну послідовність виконання команд).
1.10. Команди управління
Команди вибору, повторення і переходу безпосередньо не вказують на перетворення даних, а лише на управління послідовністю цих перетворень. Тому їх називають командами управління. Очевидно, що команди управління мають входити до системи команд будь-якого виконавця, що претендує на універсальність у деякій предметній області.
В рамках розглянутого нами імперативного підходу до опису алгоритмів використовують наступну класифікацію команд управління: команди вибору, повторення, переходу. Ми уже ввели до вживання дві команди вибору – команди повного і неповного розгалуження, одну команду повторення і команду (безумовного) переходу. Деякі інші команди управління будуть розглянуті пізніше. Ще раз звернемо Вашу увагу на два важливих аспекти у визначенні команди: її форму запису (синтаксис) і її зміст (семантику).