Главная Случайная страница Контакты | Мы поможем в написании вашей работы! | ||
|
Кроме оператора if в языке программирования Паскаль предусмотрен так называемый переключатель case. Его можно трактовать как некий вопрос, имеющий большое число ответов (а не только два, как это имеет место в операторе if-else). Однако в отличие от if, case имеет ряд принципиальных ограничений. Его формат следующий:
case селектор of
значение1: оператор1;
значение2: оператор2;
значение3: оператор3;
...
else операторN
end;
В заголовке оператора case вместо логического выражения фигурирует переменная, которую называют селектором. До этого в программе ей присваивается какое-либо значение. Эта переменная может иметь только перечисляемый тип (например, она не может быть вещественного типа). По ходу выполнения оператора case, значение переменной-селектора сравнивается с различными, описанными в нем альтернативами (метками-значениями). Как только совпадение будет найдено, то выполняется блок кода при данной метке и происходит выход в основную ветку программы. Значения-метки являются константами, которые может принимать селектор. Их тип и тип селектора должны быть совместимы по присваиванию.
Если совпадений не будет, то выполняется блок else. Если блок else отсутствует (он является не обязательным), то никакой блок кода в операторе case не выполняется.
var n: integer;
begin
write ('Введите класс школы: ');
readln (n);
case n of
1..4: writeln ('Младшие классы.');
5..8: writeln ('Средняя школа.');
9,11: writeln ('Старшие классы. Выпускной.');
10: writeln ('Старшие классы.');
else writeln ('Error')
end;
readln
end.
На использование оператора выбора накладываются следующие ограничения:
· селектор должен иметь какой-либо порядковый тип;
· каждая альтернатива должна быть константой, диапазоном, списком диапазонов, но не переменной или выражением.
Дата публикования: 2015-02-03; Прочитано: 208 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!