Отношения. Логическое выражение, стоящее после оператора If или ElseIf может быть истинным или ложным
Логическое выражение, стоящее после оператора If или ElseIf может быть истинным или ложным. В отличии от арифметических выражений логические выражения принимают не числовые значения, а логические значения – "TRUE" (истина) и "FALSE" (ложь).
В логических выражениях можно использовать следующие операции отношений: =, <, >, < =, > =, < > (равно, меньше, больше, меньше либо равно, больше либо равно, не равно).
В логическом выражении допустимы два или несколько условий (операций отношения), которые связываются логическими операциями And, Or, Not (И, ИЛИ, НЕ). Логические операции осуществляют манипуляции над битами. Они возвращают значение "Истина" (не нулевое) и "Ложь" (нулевое) значения. Описание логических операций приведено в таблице 9.6.
Таблица 9.6. Логические функции языка VBA
Операция | Название | Логическое выражение | Объяснение |
And | Логическое умножение (И) | А And B | Логическое выражение истинно, когда выполняются оба условия одновременно (истинно А и истинно В). |
Or | Логическое сложение (ИЛИ) | А Or В | Логическое выражение истинно, когда хотя бы одно из условий выполняется (истинно или А или В или оба условия одновременно). |
Not | Логическое отрицание (НЕ) | Not A | Логическое выражение истинно, когда условие A не выполняется (А ложно). |
Xor | Исключающее ИЛИ | А Xor В | Логическое выражение истинно, когда условия А и В не совпадают. |
Eqv | Эквивалент-ность | А Eqv В | Логическое выражение истинно, когда А и В одновременно истинны или одновременно ложны. |
Imp | Импликация | A Imp B | A IMP B принимает значение "ложь", если A истинно, а В ложно, и значение "истина" в других случаях. |
Пример 10. Разработать программу вычисления интервальной функции с использование оператора If…Then, заданной графически на рисунке.
Sub lomanaya_funktsiya()
DimxAs Single
DimyAs Integer
' вводим значение аргумента
x = InputBox("Введите значение аргумента функции х", "Запрос задачи")
' вычисляем значение функции
If (x >= 1 And x < 3) Or (x >= 5 And x < 7) Or (x >= 9 And x < 11) Then
y = 1
ElseIf (x >= 4 And x < 5) Or (x >= 11 And x < 12) Then
y = 2
ElseIf x >= 7 And x < 9 Then
y = -1
ElseIf x >= 3 And x < 4 Then
y = -2
Else
y = 0
End If
' выводим ответ
MsgBox "При x = " & x & " функция равна " & y, , "Ответ задачи"
Дата добавления: 2015-08-14; просмотров: 567;