Оператор выбора

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

Оператор Case позволяет записать наглядно и просто алгоритмы с многими разветвлениями. Разветвление начинается с проверки условия некоторого выражения. Это выражение при выполнении оператора должно принимать определенное значение, которое выполняет роль метки для операторов в разветвлении. Если вычисленное значение выражения совпадает с некоторой указанной меткой, то выполняется оператор, помеченный этой меткой.

 
 


Блок-схема оператора CASE

Формат записи:

Сase <переменная или выражение> of

<список значений выбора1>:<оператор1>;

<список значений выбора2>:<оператор2>;

...................................

<список значений выбора N>:<оператор N>;

Еlse <оператор n+1>]

End;

Переменная может быть любого порядкового типа, кроме longint (word, boolean, integer, char… или перечисляемый тип).

Список значений выбора - это значения, которые могут принимать переменная или выражение, перечисленные через запятую или, если значения принадлежат какому-либо интервалу, с использованием лексемы " .. " (1..7 или 'а'..'м')

Оператор - любой оператор, в том числе составной.

Принцип работы оператора:

¨ Значение переменной или выражения сравнивается с предложенными списками значений;

¨ Если найдено нужное значение, выполняется соответствующий оператор;

¨ Если нужное значение не найдено в перечисленных списках, выполняется оператор после else;

¨ Если else отсутствует, то, когда нужное значение не найдено, выполняется следующий за case оператор.

Ветви здесь представлены элементами выбора, разграниченными точкой с запятой, а слово else с последующим оператором могут отсутствовать. Элемент выбора – это оператор, например составной, снабжённый одной или несколькими константами выбора:

Пример использования оператора: Написать программу, которая за­пра­шивает номер месяца и вы­во­дит название времени года Program M1; var month: integer; begin writeln (‘введите номер месяца от 1 – 12’); readln (month); case month of 1,2,12: writeln(‘зима’); 3,4,5: writeln(‘весна’); 6,7,8: writeln(‘лето’); 9,10,11: writeln(‘осень’); else writeln (‘ошибка ввода!’); end; end.

Практические задания:


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: