ПРИМЕЧАНИЕ. Возможны сокращенные формы оператора (отсутствует ветвь elsif, ветвь else).
Возможны сокращенные формы оператора (отсутствует ветвь elsif, ветвь else).
Оператор выбора позволяет сделать выбор из произвольного количества вариантов, имеет вид
case < выражение > is
when <список выбора 1> =>
<последовательность операторов 1>
…
when <список выбора n> =>
<последовательность операторов n>
when others =>
<последовательность операторов n+1>
end case;
Порядок выполнения оператора:
1) вычисляется значение выражения;
2) каждый список выбора (от первого до последнего) проверяется на соответствие значению;
3) если найдено соответствие, то выполняется соответствующая последовательность операторов, после чего происходит выход из оператора case;
4) если не найдено соответствие, то выполняются операторы, указанные после условия when others.
Элементы списка выбора отделяются друг от друга вертикальной чертой ('|') и могут иметь следующий вид:
q <выражение>;
q <выражение n>..<выражение m>.
Примеры:
case Number is
when 1 | 7 => Put ("Is 1 or 7");
when 5 => Put ("Is 5");
when 25..100 => Put ("Is number between 25 and 100");
when others => Put ("Is unknown number");
end case;
case Answer is
when 'A'..'Z' | 'a'..'z' => Put_Line ("It's a letter!");
when others => Put_Line ("It's not a letter!")
end case;
Оператор блока объединяет последовательность операторов в отдельную структурную единицу, имеет вид
declare
<последовательность объявлений>
begin
<последовательность операторов>
end;
Дата добавления: 2015-03-07; просмотров: 726;