28600

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

Доклад

Информатика, кибернетика и программирование

Условный оператор удобен в тех случаях, когда необходимо проверить 1-2-3 варианта. При большем числе получается слишком громоздкая и неудобная для восприятия конструкция из множества вложенных инструкций. Скажем, если требуется проверить 5 значений переменной x, то получим такую конструкцию:

Русский

2013-08-20

13.92 KB

0 чел.

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

Условный оператор удобен в тех случаях, когда необходимо проверить 1-2-3 варианта. При большем числе получается слишком громоздкая и неудобная для восприятия конструкция из множества вложенных инструкций. Скажем, если требуется проверить 5 значений переменной x, то получим такую конструкцию:

if x = 1 then ; else if x = 2 then ; else if x = 3 then ; else if x = 4 then ; else if x = 5 then ;

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

case [выражение-селектор] of   <значение 1>: <код для значения 1>;   <значение 2>: <код для значения 2>;   ...   <значение N>: <код для значения N>;   [else <код для непредусмотренных явно значений>;] end

Единственным ограничением семафора, в сравнении с условным оператором, является то, что в качестве селектора могут выступать лишь данные порядкового типа, скажем, целым числом или же символом. Впрочем, для подавляющего числа случаев этого достаточно. Например, приведенный выше вариант кода с 4 вложенными условными операторами, при помощи case можно оформить так:

case x of 1: ; 2: ; 3: ; 4: ; 5: ; end;

Здесь подразумевается, что типом переменной x является целое число, поскольку тип значений, коими в данном случае являются целые числа, должен соответствовать типу селектора.

Инструкция выбора выполняется следующим образом: вначале, при необходимости, вычисляется значение селектора, затем производится последовательный обход вариантов на предмет совпадения с селектором. В случае совпадения, выполняется инструкция, предусмотренная для этого варианта, после чего выполнение оператора выбора заканчивается. Если же ни один из перечисленных вариантов не совпал со значением селектора (для нашего случая - если x меньше 1 или больше 5), то либо оператор завершается без каких-либо действий, либо, при наличии блока else, выполняются заданные в нем инструкции.

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

Листинг 4.1. Использование оператора case

var month: integer; season: string; ... case month of 1,2,12: season := "зима"; 3..5: season := "весна"; 6..8: season := "лето"; 9..11: season := "осень"; else season := "других не знаем!"; end;

В данном случае, если переменная month имеет значения 1, 2 или 12, то переменной season присваивается значение "зима", если же значение переменной month окажется в диапазоне от 3 до 5 (включительно), то season получит значение "весна", и т.д.


 

А также другие работы, которые могут Вас заинтересовать

34494. Русское искусство 19в.: П.А. Федотов – первый русский художник критического реализма 32 KB
  Осенью 1849 года в Академии художеств открылась очередная трехгодичная выставка Всеобщий интерес вызывали три небольшие картины начинающего тогда еще почти безвестного художника Федотова Свежий кавалер Разборчивая невеста и Сватовство майора.Героями картин Федотова стали не знаменитые мужи древности не персонажи евангельских и библейских легенд а простые маленькие люди с их повседневной жизнью обыденными чувствами и негероической судьбой. Новым в художественной системе Федотова был прежде всего дух социального протеста и...
34495. Русская живопись второй половины 19в.: Теория реалистического искусства. Передвижничество. Представители направления 34 KB
  Борьба между новым реалистическим искусством и Академией получила выражение в знаменитом академическом бунте 1863 года: четырнадцать молодых художников выпускников Академии решительно отказались писать программу то есть дипломную картину на заданную тему из древнескандинавской мифологии и демонстративно покинули Академию. Среди них был ряд известных впоследствии художников: возглавлявший группу протестантов И. Выйдя из Академии протестанты образовали Артель художников. Кроме петербургских художников в том же направлении работала в...
34496. Русская живопись к.19-н.20в.: Мир искусства – союз русских художников. Голубая роза. Бубновый валет 51.5 KB
  : Мир искусства – союз русских художников. Мир искусства группа в которой зародилось это сильное и влиятельное культурноэстетическое течение возникла в Петербурге в самом начале 1890 годов. Дягилев будущий вдохновитель и руководитель практической деятельности “ Мира искусстваâ€. Этапным событием на этом пути явилось издание первого номера журнала “Мир искусстваâ€.
34497. Графический дизайн в 1920-х гг. Окна роста. В. Маяковский. Д.А. Моор. Агитационно-массовое искусство 35.5 KB
  Окна роста. Окна Роста или Окна сатиры Роста особого типа плакаты на политические военные и хозяйственные темы дня которые выпускались с осени 1919 года по январь 1922 года включительно. Окна Роста обладают рядом устойчивых признаков. Типичная структура Окна Роста: несколько от 2 до 14 самостоятельных рисунков расположенных в логической последовательности и вместе с сопровождающим их текстом раскрывающих единую тему.
34498. Конструктивизм – главенствующий стиль Советской России. Этапы развития 32.5 KB
  Конструктивизм возник в Советской России как концепция формообразования в художественном творчестве и производственном искусстве 1920х гг. Первый этап сложения концепции конструктивизма экспериментальнохудожественный. Конструктивизм исходил из концепции построения форм основанной на выражении внутренних структурных связей между абстрактными геометрическими элементами изучении выразительности сочетаний различных материалов.
34499. Искусство первобытнообщинного строя. Зарождение искусства и первые шаги художественного развития человечества. Мадленский период. Росписи Альтамиры, Ляско. Анималистический жанр. Образ человека в первобытном искусстве. Мезолит. Наскальные росписи Восточн 23.57 KB
  Образ человека в первобытном искусстве. Первобытное искусство отразило первые представления человека об окружающем мире благодаря ему сохранялись и передавались знания и навыки происходило общение людей друг с другом. Что натолкнуло человека на мысль изображать те или иные предметы До недавнего времени учёные придерживались двух противоположных взглядов на историю первобытного искусства. Например к числу самых древних изображений на стенах пещер эпохи палеолита относятся и оттиски руки человека и беспорядочные переплетения волнистых линий...
34500. Искусство Древнего Египта. Искусство Древнего царства. Архитектура гробниц и храмов. Искусство Среднего царства. Архитектура, скульптура, росписи. Искусство Нового царства. Новый тип храмов (Карнак, Луксор), скульптура, росписи 23.44 KB
  Искусство Древнего Египта. Искусство Древнего Египта живопись скульптура архитектура и другие виды искусства которые зародились в Нильской долине ок. Архитектура Древнего Египта. Скульптура Древнего Египта одна из наиболее самобытных и строго канонически разработанных областей искусства Древнего Египта.
34501. Эгейское искусство. Крито-микенская культура 15.29 KB
  Памятники искусства и материальной культуры важнейшие материалы для изучения эгейской культуры. Районы распространения эгейской культуры: побережье Малой Азии острова Эгейского моря материковая Греция Крит. Развитие центров эгейской культуры на материке Дворцыкрепости Гириафа и Микен. Искусство времени расцвета Микенской культуры XVXIII вв.
34502. Искусство Древней Греции. Архаика. Архитектура. Формы храмов. Ордер. Скульптура, статуи куросов. Вазопись 18.48 KB
  Первые ордера назывались дорическим и ионическим по местам их возникновения затем появился коринфский близкий к ионическому. Архитрав дорического ордера гладкий. Фриз дорического ордера делится на прямоугольные плиты метопы и триглифы имеющие на плоскости три вертикальных желобка. Классическим примером дорического ордера может служить храм Посейдона в Пестуме Италия VI в.