Условные инструкции if
Для организации условного выполнения последовательностей алгоритмических действий (то есть, построения разветвляющихся алгоритмов), в Аде могут использоваться условные инструкции if.
Каждая инструкция if заканчивается конструкцией "end if".
if <логическое_выражение> then
-- последовательность инструкций end if; if <логическое_выражение> then -- последовательность инструкций 1 else -- другая последовательность инструкций 2 end if; |
В первом примере, приведенном выше, последовательность инструкций, описывающая алгоритмические действия, будет выполнена только в случае когда результат вычисления логического выражения будет иметь значение True. Во втором примере, в случае когда результат вычисления логического выражения - True
будет выполняться "последовательность инструкций 1", в противном случае - "последовательность инструкций 2".
Для сокращения инструкций вида "else if ... ", и в целях улучшения читабельности, введена конструкция elsif, которая может быть использована столько раз, сколько это будет необходимо.
if <логическое_выражение> then
-- последовательность инструкций 1 elsif <логическое_выражение> then -- последовательность инструкций 2 elsif <логическое_выражение> then -- последовательность инструкций 3 else -- последовательность инструкций end if; |
В этой форме инструкции if, заключительная конструкция else - опциональна.
Необходимо также заметить, что результат вычисления логического выражения всегда должен иметь предопределенный тип Standard.Boolean.