Студопедия.Орг Главная | Случайная страница | Контакты | Мы поможем в написании вашей работы!  
 

Операции сравнения



Операция Наименование Пример (R имеет тип Boolean) Результат (R)
= Равно R = (10=5) False
> Больше R = 10>5 True
< Меньше R = 10<5 False
>= Больше или равно R = “a” >= “b” False
<= Меньше или равно R = “a” <= “b” True
<> Не равно R = “a” <> “b” True

В логических операциях не только результат, но и операнды имеют тип Boolean. Поясним назначение таких операций на простом примере. Пусть переменная типа Boolean с именем R должна принимать значение True, если точка с координатами X,Y попадает в прямоугольную область, ограниченную координатами X1,X2 и Y1,Y2. Если точка за пределами прямоугольника, то R=False. Применив логическую операцию AND (И), вычислим значение R:

R = (X>=X1) AND (X<=X2) AND (Y>=Y1) AND (Y<=Y2)

Смысл этой операции в том, что если и первое выражение (X больше или равно X1) истинно, и второе истинно, и третье истинно, и четвертое истинно, то R=True. Если один из операндов логической операции AND представляет собой ложное выражение (утверждение), то и результатом будет False.

Кроме операции AND, к числу часто используемых логических операций относятся OR и NOT. Первая из них дает результат True, если истинно хотя бы одно выражение, являющееся операндом. Операция NOT изменяет результат на противоположный, подобно смене знака в арифметическом выражении. Вычислим R с помощью этих операций:

R = NOT ((X<X1) OR (X>X2) OR (Y<Y1) OR (Y>Y2))

Выражение, стоящее в скобках после операции NOT, истинно (True), если точка или левее, или правее, или ниже, или выше воображаемого прямоугольника, т.е. если точка в него не попала. В этом случае R будет иметь значение False благодаря логическому отрицанию NOT.

Несколько реже используются логические операции XOR (исключающее ИЛИ), EQV (эквивалентность) и IMP (импликация).

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

Результатом операции EQV будет True, если выражения-операнды дают одинаковый результат.

Результатом IMP будет FALSE только в одном случае – при первом операнде, имеющем значение TRUE, второй операнд имеет значение False, например, при правильной посылке получен неверный вывод.

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

Инструкция IF (ЕСЛИ) используется в двух нотациях: в виде простой и блочной структур. Инструкция простой структуры имеет следующую форму записи:

If <Выражение> Then <Инструкция, исполняемая, если выражение-условие истинно>

Конструкция блочной структуры может включать один блок инструкций (<Блок 1>), исполняемых, если выражение 1 истинно, или же еще дополнительные условия, сопровождаемые блоками инструкций:

If <Выражение1> Then

<Блок 1 – исполняется, если выражение 1 истинно>

ElseIf <Выражение2> Then

<Блок 2 – исполняется, если выражение 2 истинно >

ElseIf <Выражение3> Then

<Блок 3 – исполняется, если выражение 3 истинно >

…………………..

Else

<Блок инструкций, исполняемых, если ложны выражения в инструкциях If и ElseIf>

End If

Приведем пример простой инструкции If:

If R Then MsgBox “Точка попала в прямоугольник”

Теперь пример блочной структуры:

R = False

If X < X1 Then

GoTo 10 ’уже ясно, что точка не попала в прямоугольник

ElseIf X > X2 Then

GoTo 10 ‘управление передается на метку 10

ElseIf Y < Y1 Then

GoTo 10

ElseIf Y > Y2 Then

GoTo 10

Else

R = True

End If

10: MsgBox R ’после метки ставится двоеточие

Блоки ElseIf и (или) Else могут отсутствовать. В любом случае блочная конструкция оканчивается инструкцией End If.

Приведенный пример, кроме блочной конструкции IF, поясняет возможность использования в программе меток и передач управления с помощью инструкции GoTo. Метка не обязательно обозначается числом – можно было написать и N10 или MsgR.

В ситуациях, когда требуется запрограммировать три и более разветвлений в зависимости от значения одной переменной, удобно использовать структуру Select Case:

Select Case <Переменная>

Case <Значение 1> либо Case is <Условие 1>

<Блок 1 – выполняется, если значение переменной равно значению 1

или соответствует условию 1>

Case <Значение 2> либо Case is <Условие 2>

<Блок 2 – выполняется, если значение переменной равно значению 2

или соответствует условию 2>

………………….





Дата публикования: 2014-11-03; Прочитано: 361 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!



studopedia.org - Студопедия.Орг - 2014-2024 год. Студопедия не является автором материалов, которые размещены. Но предоставляет возможность бесплатного использования (0.006 с)...