Студопедия

КАТЕГОРИИ:


Архитектура-(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




End

If C than

Begin

If B then

Begin

If A then

Begin

If B then

Begin

If A then

If B then

If A then

Оператор If

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

Формат оператора:

<оператор If>::="If" <условие> "then" <оператор> ["else" <оператор>].

Здесь условие – это выражение, результат которого имеет тип Boolean. При выполнении оператора сначала вычисляется выражение условия. Если его значение True, выполняется оператор после слова then. Если False, выполняется оператор после слова else, либо ничего не выполняется, если часть условного оператора со словом else отсутствует.

Если в операторе If после слова then или после слова else нужно поместить более одного оператора, следует использовать составной оператор. Перед словом else нельзя ставить точку с запятой, т.к. слово else – продолжение оператора If, а не новый оператор.

При наличии вложенных операторов If действует правило: слово else относится к ближайшему слева оператору If, для которого нет слова, находящегося левее, чем рассматриваемое слово else.

Пример:

If C than D:=1

else D:=2

else D:=3;

Это выражение эквивалентно следующему:

If C than D:=1

else D:=2

end;

else D:=3;

end;

То есть, D получает значения в соответствии со следующей таблицей:

Значение A Значение B Значение C Значение D
True True True  
True True False  
True False любое  
False любое любое не меняется

Порядок выполнения вложенных операторов If можно изменить, используя составные операторы. Например:

D:=1

else D:=2

end;

else D:=3;

Здесь D получает значения в соответствии со следующей таблицей:

Значение A Значение B Значение C Значение D
True True True  
True True False  
True False любое не меняется
False любое любое  

Оператор If реализует в Паскале базовую алгоритмическую структуру ветвления.

Формат оператора:

<оператор Case>::= "Case" <выражение> of <вариант> {";" <вариант>} "end".

<вариант>::= (<константа>|<диапазон>) {"," (<константа>|<диапазон>)} ":" <оператор>.

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

При выполнении оператора вначале вычисляется выражение, затем в вариантах отыскивается константа, равная значению выражения, или диапазон, в который входит значение выражения. Если такая константа или диапазон найдены, выполняется оператор после двоеточия в соответствующем варианте, затем происходит выход из оператора Case, т.е., операторы в вариантах, следующих за найденным вариантом, не выполняются.

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

Оператор в варианте может быть любым, в том числе, это может быть еще один оператор Case. Если в варианте нужно выполнить несколько операторов, их нужно поместить в составном операторе.

Во многих реализациях, в том числе, в Turbo Pascal, синтаксис оператора расширен следующим образом:

<оператор Case>::= "Case" <выражение> of <вариант> {";" <вариант>} ["else" <оператор>] "end".

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

 

Пример:

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

Var d:0..20; c:'A'..'D';

i,j,k:integer;

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




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


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


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



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




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