Скачиваний:
81
Добавлен:
10.05.2014
Размер:
25.6 Кб
Скачать

13. Оператор выбора в Паскале.

Часто возникают ситуации, когда приходится осуществлять выбор одного из нескольких альтернативных путей выполнения программы. Несмотря на то, что такой выбор можно организовать с помощью оператора if .. then, удобнее воспользоваться специальным оператором выбора. Его формат:

case <ключ_выбора> of

<константа_выбора> : <оператор>;

...

<константа_выбора> : <оператор2>;

end;

или

case <ключ_выбора> of

<список_выбора>

else <оператор3>

end;

Здесь CASE, OF, ELSE, END - зарезервированные слова (случай, из, иначе, конец);

Выражение, которое записывается после ключевого слова case, называется селектором, оно может быть любого перечисляемого типа. вариант состоит из одной или большего количества констант или диапазонов, разделенных запятыми. Они должны принадлежать к тому же типу, что и селектор, причем недопустимо более одного упоминания вариантав записи инструкции case. Из перечисленного множества операторов будет выбран только тот, перед которым записан вариант, совпадающий со значением селектора. Если такого варианта нет, выполняется оператор, следующий за словом else (если он есть).

Вначале вычисляется значение <ключ_выбора>, а затем в последовательности операторов <список_выбора> отыскивается такой, которому предшествует константа, равная вычисленному значению. Найденный оператор выполняется, после чего оператор выбора завершает свою работу. Если в списке выбора не будет найдена константа, соответствующая вычисленному значению ключа выбора, управление передается операторам, стоящим за словом else. Часть else <оператор3> можно опускать. Тогда при отсутствии нужной константы, оператор завершит свою работу.

Пример:

case ch of

'A'..'Z', 'a'..'z' : WriteLn('Буква');

'0'..'9' : WriteLn('Цифра');

'+', '-', '*', '/' : WriteLn('Оператор');

else WriteLn('Специальный символ')

end;