Логические операторы VB

.

В Visual Basic можно выделить пять основных и важных логических операторов: And, Or, Not, Xor и Eqv. Роль каждого из них я сейчас и попытаюсь объяснить!

Итак, And!

Это, наверное, самый простой и нужный логический оператор среди других.

Help:

Возвращает результат конъюнкции (логического И) для двух выражений.

Синтксис:

Результат = выражение1 And выражение2

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

Выражение1Выражение2Результат
TrueTrueTrue
TrueFalseFalse
TrueNullNull
FalseTrueFalse
FalseFalseFalse
FalseNullFalse
NullTrueNull
NullFalseFalse
NullNullNull

А теперь маленький пример:

Представим себе, что переменные User_Has_Computer и User_Has_Car объявлены как булевы значения и в процессе каких-нибудь действий приняли значения либо True либо False. Вы устанавливаете условие, проверяющие эти значения:

Мы же сэмулируем это сами 🙂 – впишите куда – нибудь следующие строки:

Dim User_Has_Computer As Boolean

Dim User_Has_Car As Boolean

User_Has_Computer = True

User_Has_Car = True

If User_Has_Computer And User_Has_Car Then

MsgBox “Вы счастливый человек!”

End If

При проверки данного условия на экран выскочит сообщение, извещающие, что пользователь счастливый человек, т. к. у него есть машинa И компьютер :-)! А теперь перед третьей или четвертой строкой поставьте апостроф “‘” – закоменнтируйте строку. Теперь одна из переменных будет False по умолчанию. Теперь сообщение НЕ выскочит, т. к. пользователь не очень счастливый, имея машину ИЛИ компьютер…

Следующий оператор не менее простой – Or.

Help:

Выполняет операцию логического ИЛИ (сложения) для двух выражений.

Синтаксис:

Результат = выражение1 Or выражение2

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

Выражение1Выражение1Результат
TrueTrueTrue
TrueFalseTrue
TrueNullTrue
FalseTrueTrue
FalseFalseFalse
FalseNullNull
NullTrueTrue
NullFalseNull
NullNullNull

И снова маленький пример с прежними булевыми перменными User_Has_Computer и User_Has_Car, которые в процессе каких-нибудь действий приняли значения либо True либо False.

Dim User_Has_Computer As Boolean

Dim User_Has_Car As Boolean

User_Has_Computer = False

User_Has_Car = True

If User_Has_Computer Or User_Has_Car Then

MsgBox “Вы почти счастливый человек!”

End If

При проверки данного условия на экран выскочит сообщение, извещающие, что пользователь почти счастливый человек, т. к. у него есть машинa, но нет компьютера :-|…

Оператор Not.

Help:

Выполняет над выражением операцию логического отрицания.

Синтаксис:

Результат = Not выражение

Т. е. результат стает противополжным выражению (исключая Null). Возвращаемые оператором значения представлены в следующей таблице:

ВыражениеРезультат
TrueFalse
FalseTrue
NullNull

Пример:

Dim User_Has_Computer As Boolean

User_Has_Computer = False

If Not User_Has_Computer Then

MsgBox “Сочувствую…:)”

End If

Объясняю: условие If… Then выполняется тогда, когда какое-нибудь выражение (на месте…) равно True. Представим, что переменная User_Has_Computer = False. Тогда строка

Not User_Has_Computer дает результат True и условие выполняется!

Оператор Xor.

Help:

Выполняет операцию исключающего ИЛИ для двух выражений.

Синтаксис:

[результат =] выражение1 Xor выражение2

В принципе, этот оператор похож на Or, но это не просто ИЛИ, а исключающее ИЛИ. Если одно и только одно из выражений истинно (имеет значение True), результат имеет значение True. А оператор Or допускает два истинных выражения. Результат определяется следующим образом:

Выражение1Выражение2Результат
TrueTrueFalse
TrueFalseTrue
FalseTrueTrue
FalseFalseFalse

Пример:

Dim User_Has_Computer As Boolean

Dim User_Has_Car As Boolean

User_Has_Computer = False

User_Has_Car = True

If User_Has_Computer Xor User_Has_Car Then

MsgBox “Вам нужна машина И компьютер!”

End If

Здесь так же, как и в предыдущем примере условие выполняется только тогда, когда строка User_Has_Computer Xor User_Has_Car истинна (= True). А истинна она тогда и только тогда, когда только одно из условие истинно. Если оба, то условие уже не исполнится.

Оператор Eqv.

Help:

Используется для проверки логической эквивалентности двух выражений.

Синтаксис:

Результат = выражение1 Eqv выражение2

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

Выражение1Выражение2Результат
TrueTrueTrue
TrueFalseFlase
FalseTrueFalse
FalseFalseTrue

Пример:

Dim User_Has_Computer As Boolean

Dim User_Has_Car As Boolean

User_Has_Computer = True

User_Has_Car = True

If User_Has_Computer Eqv User_Has_Car Then

MsgBox “Вы или счастливый или несчастный человек!”

End If

Здесь компьютер назовет Вас человеком “счастливым или несчастным”, т. к. условие выполняется только тогда, когда пользователь имеет и машину и компьютер или не того и не другого.


Логические операторы VB