Логическая операция |
Действие |
And (Конъюнкция) |
Результирующее значение будет True(Истина), если все условные выражения истинны. |
Or (Дизъюнкция) |
Результирующее значение будет True (Истина), если хотя бы одно из условных выражений истинно. |
Not (Отрицание) |
Результирующее значение будет True(Истина), если условное выражение ложно (False) и наоборот. |
Xor (Исключающее ИЛИ) |
Результирующее значение будет True (Истина), если одно и только одно условное выражение истинно. |
ВЫПОЛНИТЕ!
Задание 3.
Изменим выше составленную программу (процедура CommandButton1_Click), введя еще время для идентификации части суток:
Dim Сутки As String, время As Integer
Сутки = InputBox("Введите часть суток")
время = InputBox("Введите время суток")
‘Логическая операция And
If Сутки = "утро" And время <= 11 Then
MsgBox ("Доброе утро")
ElseIf Сутки = "день" And время <= 16 Then
MsgBox ("Добрый день")
ElseIf Сутки = "вечер" And время >= 18 Then
MsgBox ("Добрый вечер")
Else
MsgBox "Извините, неверная часть суток или неверное время "
End If
Проверьте работу программы и составьте блок-схему. Добавьте еще часть суток – " ночь" и укажите время.
2. БЕЗУСЛОВНЫЙ ПЕРЕХОД GoTo
Позволяет изменить порядок выполнения команд. Задает безусловный переход на указанную строку внутри той процедуры, в которой она находится.
Синтаксис:
GoTo идентификатор
Обязательный параметр идентификатор может быть любой меткой строки или номером строки. Метки строки – это строка программы, в которой указывается имя метки и двоеточие (:). Метки должны иметь уникальные имена в пределах одной процедуры. Например:
Мет1: к = к+1 ` Метка строки Мет1
Оператор перехода на метку Мет1 будет иметь вид:
GoTo Мет1
ВЫПОЛНИТЕ!
Задание 4. Даны действительные числа х, у. Составить пользовательскую функцию.
y*x , если и x>0, и y>0
Z = |x+y| , если и x<0, и y<0
0 , в остальных случаях.
Блок-схема.
Программа с использованием блочной структуры оператора If:
Function z(x, y)
If x > 0 And y > 0 Then
z = y * x
ElseIf x < 0 And y < 0 Then
z = Abs(x + y)
Else
z = 0
End If
End Function
Другой вариант программы с использованием оператора GoTo:
Function zz(x, y)
If x > 0 And y > 0 Then zz = y * x : GoTo kon
If x < 0 And y < 0 Then zz = Abs(x + y) : GoTo kon
zz = 0
kon: End Function
Введя значения «х» и «у» в ячейки рабочего листа ЭТ, получим результаты работы программы:
x |
y |
z |
104 |
5 |
520 |
-8 |
-14 |
22 |
67 |
-1 |
0 |
-5 |
12,5 |
0 |
3. ОПЕРАТОР ВЫБОРА – ПЕРЕКЛЮЧАТЕЛЬ
Структура SelectCase похожа на структуру If…Then…Else, но она более эффективна в том случае, когда в зависимости от значения анализируемого выражения, выбирается и выполняется одна из нескольких уникальных последовательностей операторов. В языках высокого уровня такой оператор называют переключателем.
Синтаксис структуры SelectCase следующий:
SelectCase выражение
Case список Условий_1
Операторы, выполняемые при совпадении условия_1 для значения выражения
Caseсписок Условий_2
Операторы, выполняемые при совпадении условия_2 для значения выражения
. . . . . . . . . . . . . .
Caseсписок Условий_i
Операторы, выполняемые при совпадении условия_i для значения выражения
Case Else
Операторы, выполняемые при несовпадении ни одного из условий для значения выражения
EndSelect
где выражение – обязательный параметр, может быть любым выражением любого типа данных VBA, включая числовой, строковый или логический;
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.