
- •1.Алгоритмический язык Basic. Предопределенные типы данных. Язык программирования vba
- •2.Именование идентификаторов.
- •Операторы, выражения и операции
- •3. Объявления переменных и констант. Объявление переменных
- •4.Арифметические операции. Арифметические выражения.
- •5. Операторы присваивания. Приоритет операций и порядок вычислений.
- •6.Логические операции и операции отношения. Булевские выражения.
- •7. Операторы If-Then и If-Then-Else.
- •8.Оператор If с несколькими альтернативами.
- •9.Оператор Select Case.
- •10.Вложенные конструкции для принятия решений.
- •Цикл For … Next
7. Операторы If-Then и If-Then-Else.
Условие – это логическое выражение, которое может принимать одно из двух значений: “ДА” – если условие верно (истинно, TRUE), и “НЕТ” – если условие неверно (ложно, FALSE).
Оператор If ... Then используется для того, чтобы выполнить какой-либо оператор или несколько операторов, если некоторое условие будет истинным.
Синтаксическая конструкция этого оператора может иметь две формы:
безальтернативную: If условие Then выражение;
альтернативную: If условие Then выражение_1 Else выражение_2.
Если условие принимает значение True (Истина), то выполняется выражение 1, если False (Ложь), то выражение 2. Ветвь Else является необязательной. Например, если скидка в 5% применяется только к суммам >1000, то в VBA это можно записать так:
If Money > 1000 Then Discont = 0.05 Else Discont = 0
или, что равносильно
If Money > 1000 Then Discont = 0.05
Допускается также использование блочной формы синтаксиса, которая упрощает восприятие оператора условного перехода. При блочной организации оператора условного перехода используется ключевое слово End If для обозначения окончания оператора:
If Money > 1000 Then
Discont = 0.05
End if
Else
Discont = 0
Первым проверяется условие 1. Если оно имеет значение True, то выполняется группа операторов 1 и далее работа программы продолжится со строки, которая следует за ключевым словом End if. Если условие 1 возвращает значение False, то проверяется условие 2 и т.д., пока не встретится условие, возвращающее значение True, или не встретится ключевое слово Else.
8.Оператор If с несколькими альтернативами.
Примеры правильного синтаксиса:
IF a=1 THEN b:=2 ELSE b:=3;
END;
IF a=1 THEN b:=2;c:=3; ELSE b:=3;c:=4;
END;
IF a=1 THEN b:=2; c:=3;
END;
Если дерево условий гораздо сложнее, чем просто проверка одного условия, используется оператор If ... Then ... Elseif, который позволяет проверять несколько условий:
If условие 1 Then
<группа операторов 1>
Elseif условие 2 Then
<группа операторов 2>
Else
<группа операторов n>
End if
Алгоритм работы такой конструкции следующий:
– если логическое выражение 1 истинно, то выполняется оператор P1 (или блок операторов), следующий за конструкцией Then, а остальные операторы пропускаются;
– если логическое выражение 1 ложно, то оператор P1 пропускается и анализируется логическое выражение 2, следующее за ElseIf. Если оно истинно, то выполняется оператор P2 (или блок операторов), следующий за Then, а остальные операторы пропускаются;
– оператор P4 (или блок операторов), следующий за последним Else, выполняются лишь в том случае, если ложны все логические выражения в конструкциях If.
9.Оператор Select Case.
При наличии большого количества ветвлений конструкция многозначных ветвлений If становится тяжёлой для восприятия. В подобных случаях хорошей альтернативой оператору If служит оператор выбора Select Case, который позволяет выбрать одно из нескольких возможных продолжений программы.
Синтаксис оператора Select Case:
Select Case КлючВыбора
Case Is выражение
оператор
Case диапазон значений
оператор
Case диапазон значений
оператор
Case диапазон значений
оператор
Case Else
оператор
End Select
Например:
Select Case vozrast
Case Is <=7
Msgbox ”Ты дошкольник”
Case 8 to 16
Msgbox ”Ты учишься в школе”
Case 17 to 30
Msgbox ”Тебе пора заняться делом”
Case 31 to 60
Msgbox ”Кто не работает, тот не ест”
Case Else
Msgbox ”Вы заслужили отдых”
End Select