Pascal. Оператор выбора case.

Мы уже с Вами познакомились с оператором условия if, с его помощью можно преобразовать число в текстовый вид, то есть в слово.


Вот фрагмент такой программы:

От значения переменной цифры мы принимаем оператор if и выводим сообщение. Такой вид записи утомляет — каждый раз писать всё новый и новый оператор условия if не очень удобно, так для чисел от 0 до 9 это будет выглядеть так:

Для написания таких вот сравнений придумали специальный оператор case —  оператор выбора. Он состоит из четырёх слов — case(случай) of(из) else(иначе) end(конец).

Оператор выбора работает по следующему алгоритму:

В начале вычисляется значение выражения, которое может быть любого типа, кроме Real и String

Затем выполняются оператор или группа операторов, соответствующие результату вычесления выражения, то есть в первом пункте мы вычисляем значение выражения, и уже по этому значению выбираем подходящий нам оператор

Если это значение здесь не оказалось, то работает другая часть операторов, следующих после else(иначе)

И завершается всё это словом end; с точкой с запятой.

Вот сама конструкция оператора выбора:

Теперь рассмотрим употребление этого оператора на практике:

Первый случай — если не обнаруживается не каких подходящих операторов, то выполняется оператор после else:

Следующий случай — если один оператор выполняется при нескольких значениях, тогда эти значения можно перечислить через запятую:
В следующем случае оператором может быть не только простой оператор, но и составной включающий в себя сразу несколько операторов, или оператор может быть просто пустым:
В следующем случае оператор будет выполнятся если вычесленное значение подходит к значениям следующим друг за другом — то есть например подходит от 0 до 9, то оператор будет выполняться, то есть эти значения будут представлять некий диапазон:
Теперь давайте используем это в нашей следующей программе, которая будет считывать данные с клавиатуры, и определять цифра ли это или нет:

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

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

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