Студопедия

КАТЕГОРИИ:


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

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




Оператор условия if является одним из самых популярных средств, изменяющих естественный порядок выполнения операторов программы. Он может принимать одну из следующих форм:

1. if <условие> then <оператор-1> else <оператор-2>;

Ключевые слова if, then, else означают соответственно «если», «то», «иначе». Условие – это выражение булевского (логического) типа. Оно может быть простым или сложным. Сложные условия образуются с помощью логических операций and, or, not. При записи условий могут быть использованы все допустимые в Паскале операции отношения.

Если значение логического выражения (условия) истинно (True), выполняется <оператор-1>, если ложно (False) – <оператор-2>.

Пример: A:=3; B:=7;

if A>B then writeln ('A больше B')

else writeln ('A меньше или равно B');

На экране появится сообщение 'A меньше или равно B'.

 

2. if <условие> then <оператор>;

 

Если результат логического выражения (условия) истинно (True), то выполняется <оператор>, если ложно (False) – оператор, следующий сразу за оператором if.

Пример: A:=3; B:=7; C:=0;

if A>B then begin

C:=A+B;

A:=0

end;

C:=C+5;

writeln('C=', C:2);

В этом примере выражение A>B ложно, оператор C:=A+B не выполнится и на экране появится сообщение 'C=5'. Один оператор if может входить в состав другого оператора if (вложенность операторов):

if <условие-1> then

if <условие-2> then <оператор-1>

else <оператор-2>;

При вложенности операторов каждое else присоединяется к тому then, которое непосредственно ему предшествует.

Оператор выбора case является обобщением оператора if и позволяет сделать выбор из произвольного количества имеющихся вариантов вычислений.

Оператор case может иметь две формы.

1. Case <выражение-селектор> of <список-1>: <оператор-1>; <список-2>: <оператор-2>; ………………………………… <список-n>: <оператор-n> else <оператор> end;

2. Вторая (короткая) форма отличается от первой отсутствием строки else <оператор>.

Оператор case работает следующим образом. Сначала вычисляется значение выражения-селектора, затем выполняется тот оператор, константа выбора которого в списке равна этому вычисленному значению селектора. Если ни одна из констант ни одного из списков не равна текущему значению селектора, то выполняется оператор, стоящий за словом else. Если слово else отсутствует, то управление передается оператору, находящемуся за словом end.

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

Пример 1. Селектор интервального типа:

Case n of

1..10: writeln ('число', n:3,'в диапазоне 1-10');

11..20: writeln ('число', n:3,'в диапазоне 11-20');

21..30: writeln ('число', n:3,'в диапазоне 21-30')

else writeln('число ',n:3,'вне контроля')

end; {case}

Пример 2. Селектор целочисленного типа:

Case n of

1, 5, 7: x:=n+1;

10..20: x:=n+10

else goto metka1

end; {case}

Пример 3. Селектор символьного типа:

Writeln('Y/y – продолжение работы');

Writeln('N/n – выход из программы');

Readln(selector);

Case selector of

'Y', 'y': Work; {продолжение работы}

'N', 'n': exit {выход из программы}

end; {case}

Пример 4.

Case day of

1..5: writeln ('рабочий день');

6, 0: writeln ('выходной день)

end;

Согласно формуле Зеллера соответствие между номером дня недели и его названием будет таким:

0 – воскресенье; 1 – понедельник; …………………. 6 – суббота.




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


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


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



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




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