#9.2 Case в Паскале: Оператор выбора ("варианта", "переключатель")
Primary tabs
Case - "оператор" выбора, используется в разных языках программирования, для описания ситуации сравнения какого-то значения с разными вариантами, и каких-то действий, которые надо предпринять, если найдено совпадение.
Расмотрим пример кода с участием условного оператора:
var a: integer; begin a := 5; if (a = 3) then // вариант сравнения writeln(3) else if (a = 4) then // вариант сравнения writeln(4) else if (a = 6) then // вариант сравнения writeln(6) else // если ничего предыдущее не выполнилось writeln('Что-то еще'); end.
Это пример можно переписать так с использование оператора case:
var a: integer; begin a := 5; // или a:=4, смотря какой вариант нам нужен case a of 3 : writeln(3); // вариант сравнения 4 : writeln(4); // вариант сравнения 6 : writeln(6); // вариант сравнения else // далее операция по умолчанию: если ничего предыдущее не выполнилось writeln('Что-то еще'); end; // конец блока case end.
(см. видео-разбор: Работа оператора Case, Общее представление для лучшего понимания)
-- обратите внимание, что у case есть собственный завершающий end.
Если для какого-то из вариантов требуется выполнить более одной операции, то:
var a: integer; begin a := 3; case a of 3 : begin writeln(3); writeln(3); end; // вариант сравнения 4 : writeln(4); // вариант сравнения 6 : writeln(6); // вариант сравнения else // если ничего предыдущее не выполнилось writeln('Что-то еще'); end; // конец блока case end.
"Неполная форма": без варианта по умолчанию
Оператор case может быть использован и в неполной форме без else, когда нас не интересуют никакие другие варанты, кроме точных совпадений:
var a: integer; begin a := 5; // или a:=4, смотря какой вариант нам нужен case a of 3 : writeln(3); // вариант сравнения 4 : writeln(4); // вариант сравнения 6 : writeln(6); // вариант сравнения end; // конец блока case end.
Видео-разборы
Задачи для самостоятельного решения
- Пользователь вводит символ, если он равен 'a', то выведите на экран 1, если 'b', то 2, иначе 3
--решить с помощью оператора case
- Пользователь вводит символ, если он равен 'a', то выведите на экран 1, если 'b', то 2, если же 'c', то 3 (без использования варианта по-умолчанию)
--решить с помощью оператора case
Документация
- The Case statement: https://www.freepascal.org/docs-html/ref...
- Case: https://wiki.freepascal.org/Case
Страница посвящается третьему курсу ФКН СПО Воронежского Лестеха, в ходе занятий с которым (в основном группы 202 и 203) она и была добавлена в 2023 году ;)
- Log in to post comments
- 1442 reads