Что такое оператор выбора

Условные операторы

Бывает, что в процессе выполнения программы требуется реализовать разный набор команд в зависимости от произошедших до этого событий. В языках программирования это достигается с помощью специальных конструкций – условных операторов.

Чаще всего в качестве условного оператора в языках программирования используется конструкция if-else или ее сокращенный вариант if. Также существует оператор выбора case, который имеет более специфичное применение.

Что такое оператор выбора. Смотреть фото Что такое оператор выбора. Смотреть картинку Что такое оператор выбора. Картинка про Что такое оператор выбора. Фото Что такое оператор выбора

Оператор if-else

Когда выполнение основной ветки программы доходит до условного оператора if-else, то в зависимости от результата логического выражения в его заголовке выполняются разные блоки кода. Если логическое выражение вернуло true, то выполняется один блок (в Паскале начинается со слова then), если false – то другой (начинается со слова else). После выполнения одного из вложенных блоков кода, ход программы возвращается в основную ветку. Другой вложенный блок не выполняется.

Например, программа должна определять, ввел пользователь четное или нечетное число, и выводить на экран сообщение. Тогда программный код на языке Pascal может быть таким:

Бывают неполные формы условных операторов. В таком случае вложенный в if блок кода выполняется только в случая true логическом выражении заголовка. В случае false выполнение программы сразу передается в основной блок. Понятно, что ветка else в таком случае отсутствует.

В примере ниже, если переменная имеет значение меньше нуля, то ее значение изменяется (находится модуль числа). Если же значение переменной изначально больше нуля, то блок кода при операторе if вообще не выполняется, т.к. не соблюдено условие (n Добавить комментарий

Источник

Что такое оператор выбора

значение1: оператор1;
значение2: оператор2;
значение3: оператор3;
..
else операторN
end;

Что такое оператор выбора. Смотреть фото Что такое оператор выбора. Смотреть картинку Что такое оператор выбора. Картинка про Что такое оператор выбора. Фото Что такое оператор выбора

Значение «выражения» и значения констант («значение1» и т.д.) должны быть порядкового типа.
Выполнение оператора Case:
В заголовке оператора case вместо логического выражения фигурирует переменная или выражение порядкового типа, которую называют селектором. До этого в программе ей присваивается какое-либо значение. По ходу выполнения оператора case, значение переменной-селектора (значение выражения) сравнивается с различными, описанными в нем альтернативами (метками-значениями). Как только совпадение будет найдено, то выполняется блок кода при данной метке и происходит выход в основную ветку программы. Значения-метки являются константами, которые может принимать селектор. Их тип и тип селектора должны быть совместимы по присваиванию.

Если совпадений не будет, то выполняется блок else. Если блок else отсутствует (он является не обязательным), то никакой блок кода в операторе case не выполняется.
Если для разных переменных-селекторов требуется выполнить один и тот же оператор, то можно эти константы перечислить через запятую и после двоеточия указать этот оператор.
Пример 1:

Источник

Pascal: Занятие №2. Часть 2: Оператор выбора в паскале

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

Рассмотрим использование оператора выбора в языке Паскаль на конкретном примере.

Особенность: Выбор не из двух, а из нескольких вариантов в зависимости от отметки.

Результат выполнения с использованием условного оператора if:

var otmetka:integer; begin writeln(‘Отметка?’); readln(otmetka); if (otmetka=1) or (otmetka=2) then writeln (‘кошмар!’) else if otmetka=3 then writeln(‘плохо’) else if otmetka=4 then writeln(‘неплохо’) else if otmetka=5 then writeln(‘отлично!’) else writeln(‘таких отметок не бывает’); end.

Данный пример демонстрирует нерациональную работу программиста и слишком запутанный код. Гораздо лаконичнее выглядит код при использовании оператора выбора.

Результат выполнения с использованием оператора выбора case:

var otmetka:integer; begin writeln(‘отметка?’); readln(otmetka); case otmetka of 1,2 : writeln (‘кошмар!’); 3: writeln(‘плохо’); 4: writeln(‘неплохо’); 5: writeln(‘отлично!’); else writeln(‘таких отметок не бывает’); end end.

Блок-схема, соответствующая оператору выбора:
Что такое оператор выбора. Смотреть фото Что такое оператор выбора. Смотреть картинку Что такое оператор выбора. Картинка про Что такое оператор выбора. Фото Что такое оператор выбора

[Название файла: L2task9.pas ]

Что такое оператор выбора. Смотреть фото Что такое оператор выбора. Смотреть картинку Что такое оператор выбора. Картинка про Что такое оператор выбора. Фото Что такое оператор выбора

Перечисление или диапазон

Что такое оператор выбора. Смотреть фото Что такое оператор выбора. Смотреть картинку Что такое оператор выбора. Картинка про Что такое оператор выбора. Фото Что такое оператор выбора

Что такое оператор выбора. Смотреть фото Что такое оператор выбора. Смотреть картинку Что такое оператор выбора. Картинка про Что такое оператор выбора. Фото Что такое оператор выбора

[Название файла: L2task10.pas ]

Детально разобраться в том, как работает оператор выбора Case в Паскале, можно просмотрев видеоурок:

Символьный тип char в Паскале

Для решения следующей задачи пригодится тип char — символьный.
Переменная данного типа объявляется так:
c: char;
и присваивает значения следующим образом:
c:=’a’;

Источник

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

Многие сегодня хотят стать программистами. Хотят. Но ничего не делают для этого. Не делают даже простых вещей. Не хотят даже прочитать книжку из 10 страниц. В итоге так и остаются никем. Потому что мечты не сбываются никогда. Сбываются только планы… Подробнее.

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

То есть вполне работоспособным будет следующее выражение:

if x > 0 then if x <> 1 then x := 2;

Как видите, здесь после слова then следуюет ещё один оператор if. То есть после проверки условия (х > 0) мы ещё проверяем, не равен ли х единице. Второй оператор if как раз таки и является вложенным оператором, так как он входит в состав первого оператора if. Советую над этим подумать и разобраться в сути. Иначе в будущем проблем вам не избежать.

А теперь давайте попробуем усовершенствовать наш калькулятор. Как вы помните из предыдущих уроков, наш простейший калькулятор приминает от пользователя два числа и выполняет с ними операции сложения, вычитания, умножения и деления.

Однако пользователю наверняка нужно выполнить только одну операцию. Поэтому его будет раздражать вывод лишних данных. Как быть? Вариантов много. Но мы будем получать от пользователя не только два числа, но и вид операции. То есть пользователь сначала должен будет ввести два числа, а потом знак операции. Допустим, что знак операции мы прочитаем в переменную op. Тогда определить, какую операцию нужно выполнить, мы сможем с помощью такой конструкции:

Эта конструкция вполне работоспособна. Можете проверить её на практике.

Но, согласитесь, что выглядит этот код не очень “читабельно”. А если придётся проверить больше вариантов?

Для таких случаев существует оператор выбора. В некоторых источниках его называют оператор варианта. Этот оператор позволяет выбрать из нескольких вариантов. В Паскале он обозначается словом case, а вся конструкция выбора выглядит примерно так:

Здесь ПорядковаяПеременная – это переменная порядкового типа (число или символ, или выражение, результатом которого является число или символ), значение которой проверяется в конструкции CASE. Если значение этой переменной равно Значение_1, то выполняются операторы, которые следуют после двоеточия за этим значением (Операторы_1). Если значение переменной ПорядковаяПеременная – равно Значение_2, то выполняются операторы, которые следуют после двоеточия за этим значением. Если же значение переменной ПорядковаяПеременная не соответствует ни одному из значений Значение_1 … Значение_N, то выполняются операторы, размещенные после слова ELSE. Обратите внимание, что перед словом ELSE стоит точка с запятой.

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

В этом случае Оператор_1 будет выполнен, если Х = 1 или Х = 4 или Х = 6, а Оператор_2 будет выполнен в том случае, если 10 Домашнее задание:

Повторить программу из листинга 19.2. Разобраться с принципом работы оператора выбора.

Источник

BestProg

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

Содержание

Поиск на других ресурсах:

Оператор выбора switch обеспечивает многонаправленное ветвление в программе. Этот оператор позволяет сделать выбор среди нескольких альтернативных вариантов дальнейшего выполнения программы.

Общий вид оператора switch :

Если ни одна из констант выбора не совпадает с заданным выражением, то выполняются операторы, которые следуют за словом default.

В случае, если блок default отсутствует в операторе switch и ни одна из констант не совпадает со значением выражения, то никаких действий не выполняется.

Фрагмент кода, который решает данную задачу с использованием оператора switch :

6. Пример программы, использующей вложенны оператор switch

Оператор switch может быть вложен в другой управляющий оператор, которым может быть:

Количество уровней вложения неограничено. Значит, оператор switch может быть размещен на произвольном уровне вложения.

Программа вычисляет количество дней в месяце исходя из введенного значения номера месяца month и года year. Учитывается тот фактор, что год может быть высокосным.

Результат выполнения программы

Кроме целочисленных данных в операторе switch могут использоваться строки символов.

Пример. В примере по названию месяца выводится количество дней в этом месяце. Принимается, что в феврале 28 дней.

Источник

Добавить комментарий

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