- •Создание приложений в vb
- •Разработка пользовательского интерфейса приложения
- •Описание данных
- •Выражения
- •Арифметические выражения
- •Выражения отношения
- •Логические выражения
- •Строки и символьные выражения
- •Стандартные функции
- •Финансово-математические функции Функции обработки дат и времени
- •Операторы
- •Оператор перехода
- •Оператор присваивания
- •Конструкции управления
- •Условный оператор
- •Оператор варианта Select Case
- •Оператор цикла с параметром For…Next
- •Цикл Do…Loop
- •Массивы
- •Встроенные окна диалога
- •4.7. Флажок
- •4.8. Переключатель
Условный оператор
Существует несколько разновидностей условного оператора. При необходимости выполнения того или иного оператора (или блока операторов) в зависимости от результата проверки определенного условия, следует использовать следующую конструкцию:
IF логическое выражение THEN
then_последовательность
[ELSE
else_последовательность]
END IF
Если результатом проверки логического выражения является значение True, то будет выполнен блок then_последовательность, находящийся после ключевого слова Then. С другой стороны, если проверка логического выражения дала результат False, то будет выполнен блок else_последовательность, расположенный после ключевого слова Else.
В том случае, когда определенное действие (или набор действий) нужно выполнить после проверки не одного, а нескольких условий, следует использовать следующую конструкцию:
IF логическое выражение 1 THEN
[блок операторов 1]
[ELSEIF логическое выражение 2 THEN
[блок операторов 2]]
[ELSE
[блок операторов n]]
END IF
Блок операторов - это один оператор или последовательность операторов.
Если результатом проверки логического выражения 1, находящегося после ключевого слова If, является значение True, то будет выполнены операторы из блока операторов 1, находящегося после ключевого слова Then. Если же оно ложно, то проверяется логическое выражение 2, находящегося после ключевого слова ElseIf, в случае его истинности выполняются операторы из блока операторов 2 и т. д. Если ни один из этих условий не является истинным, то есть результатом всех проверок является значение False, то выполняются операторы из блока операторов n, расположенные после ключевого слова Else.
Примеры:
If A > 10 Then A = A+1 : B = B + A : GoTo Vstavka 'обход
If Name = "Иван" Then GoTo 555 'обход
If Answer = "No" Then 'ветвление
Mark = Mark - 1
Else
If Num_Answer = Max_Num Then
Topic = Topic + 1
Else
Result = Mark
End if
End if
If Answer = "No" Then
Mark = Mark - 1
ElseIf Num_Answer = Max_Num Then
Topic = Topic + 1
Else
Result = Mark
End if
Оператор варианта Select Case
Когда существует несколько операторов (или блоков операторов), которые необходимо выполнить в случае истинности того или иного условия, то запись If .. Then может оказаться достаточно громоздкой. Поэтому в подобных случаях следует использовать структуру Select Case, которая улучшает читаемость программы. Ее синтаксис выглядит следующим образом:
Select Case выражение
Case список выражений 1
блок операторов 1
Case список выражений 2
блок операторов 2
…
Case список выражений n
блок операторов n
[Case Else
блок операторов n+1]
End Select
Здесь,
выражение - выражение арифметического или символьного типа.
список выражений может иметь одну из следующих форм:
выражение;
выражение To;
выражение Is операция отношения выражение.
Если значение выражения содержится в список выражений 1, находящегося после первого по порядку служебного слова Case, то выполняется блок операторов 1. С другой стороны, если значение выражения содержится в список выражений 2, то выполняется блок операторов 2 и т.д. Когда значение выражения не содержится ни в одном из приведенных списков, то выполняется блок операторов n+1, находящийся после служебного словосочетания Case Else, которе является необязательным в рассматриваемой конструкции.
Пример:
Dim x, y As Single
Select Case X
Case 1, 3 'X = 1 или X = 3
Y= X^2
Case 5 To 10 '5 < = X <= 10
Y= X^2/3
Case 12 Is >= 15 'X = 12 или X >= 15
Y= X+3
Case Else 'в противном случае
Y= X
End Select