Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Case Селектор of




Следует помнить правило: ключевое слово else связывается с ближайшим перед ним ключевым словом if, которое еще не было связано с каким-нибудь ключевым словом else.

Begin

Then

оператор1;

if Условие2

then оператор2

else оператор3;

оператор4

end

else

begin

оператор5;

if Условие3 then оператор6

end;


 

Однако если вложенный оператор if является единственным оператором в ветви альтернативы, то может возникнуть неопределенность: какому If отвечает ветвь else.

Например: if Условие then if Условие then оператор1 else оператор2;

 

Если в предыдущем примере более четко определить структуру вложенности, записав else на одном уровне с then, которому оно отвечает, то получим фрагмент:

if Условие

then

if Условие then оператор1

else оператор2;


 

Оператор поливариантного выбора

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

 

Приведем синтаксис полной формы оператора выбора:

Список_констант_1: Оператор_1;

Список_констант_2: Оператор_2;

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

Список_констант_N: Оператор_N

else Оператор_Х

end;

где Case, of, else, end ключевые слова;

Селектор переменная или выражение порядкового типа;

Список_констант – перечень констант, разделенных запятыми, или диапазоны констант, типы которых совпадают с типом селектора;

оператор – любой оператор.


 

Важно.

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

Ключевое слово, end обозначает конец оператору

 

Если константы представляют собой диапазон чисел, то вместо списка можно привести первую и последнюю константы диапазона, которые будут разделены двумя точками. Например, список 1, 2, 3, 4 можно записать как

1.. 4.

 


 

Действие оператора. Сначала вычисляется значение управляющего выражения (Селектора). Полученное значение сравнивается со списками констант. Если Селектор принимает одно из значений какого-нибудь Списка_констант, то выполняется соответствующий этому списку Оператор, а остальные операторы пропускаются. Оператор_Х будет выполняться в том случае, если значение Селектора не совпало ни с одним из значений Списков_констант от 1-го до N-гo (т.е. выполнится оператор, следующий за словом else).

В неполной форме оператора Case альтернативное всем предыдущим вариантам выбора разветвления else отсутствует. Таким образом, если значение Селектора не совпадает ни с одним из значений констант выбора, не выполняется ни один из операторов, описанных в Case, и управления передается оператору, следующему за ключевым словом end, которое замыкает оператор Case.

Блок-схема алгоритма инструкции Case выглядит как

 


 

Задача. Составить программу, которая выводит на экран дисплея название поры года, в зависимости от введенного номера месяца.

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

program Ex_6;

var n: 1..12; //Используется интервальный тип




Поделиться с друзьями:


Дата добавления: 2014-01-07; Просмотров: 780; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.008 сек.