Pascal. Условный оператор Case.

Довольно часто при создании программ нам требуется принимать от пользователя разные по значению входные данные и в зависимости от получаемого результата каждого из них совершать определенные действия. Для этого в Паскале есть условный оператор Case.


Его синтаксис таков:

Case <анализируемая переменная> of

<Значение 1>:<Действие 1>;

<Значение 2>:<Действие 2>;

<Значение 3>:<Действие 3>;

<Значение N>:<Действие N>;

Else<Действие N + 1>

end;

Конечно же вместо «Действие» здесь можно вставить любую часть кода, заключив ее в операторные скобки Begin … End; если нам нужно для одного варианта совершать несколько действий.

Надеюсь, с этой программой все понятно. Она просто принимает число от пользователя — его оценку и выводит на экран соответствующее сообщение. Вот как она выглядела бы, если писать ее с помощью if … then … else.

Замечу, что у оператора case есть существенное ограничение — переменная, стоящая после слова case, должна быть порядкового типа(Integer, LongInt, Char, Byte, Word). А значения типов Real и String применять в операторе case нельзя. Давайте решим еще одну задачу, допустим, нам нужно определить, какую букву ввел с клавиатуры пользователь (гласную или согласную, возможен ответ «таких букв не существует»). Кроме того, давайте разделим согласные буквы на глухие и звонкие, если введены «ъ» или «ь», то выведем «другая».

Теперь давайте напишем мини калькулятор с помощью оператора case.

Данная программа просто выполняет подсчеты, исходя из данных, введенных пользователем.

И еще хочу дополнить, что в операторе case вместо анализируемой переменной может находиться какое-нибудь выражение, например, case a*a+1 of (далее следует продолжение оператора case, оно может быть произвольным, но не нужно забывать, в каких случаях могут возникнуть ошибки).

Кроме того, конструкция <Значение 1>:<Действие 1>; может выглядеть следующим образом. 12 ..18 . Она обозначает то же, что и 12,13,14,15,16,17,18. Служит в нашем случае для сокращения записи и называется диапазоном. Итак, надеюсь, теперь вы имеете представление, что такое условный оператор Case, возможно, эта статья была для Вас полезной.


Похожие записи:

Оставить комментарий

Ваш e-mail не будет опубликован. Обязательные поля отмечены *