Студопедия Главная Случайная страница Обратная связь

Разделы: Автомобили Астрономия Биология География Дом и сад Другие языки Другое Информатика История Культура Литература Логика Математика Медицина Металлургия Механика Образование Охрана труда Педагогика Политика Право Психология Религия Риторика Социология Спорт Строительство Технология Туризм Физика Философия Финансы Химия Черчение Экология Экономика Электроника

Операторы If...Then и If...Then...Else




Синтаксис оператора If...Then:

If <условие> Then <оператор>

Управляющий оператор If...Then предназначен для проверки условия (<условие>) и выполнения одного оператора (<оператор>) в случае, если результат проверки условия равен True (Истина).

Пример:

Sub primer() Dim diskont As Boolean ' Объявление логической ' переменной diskont Dim skidka As Double skidka=0 diskont=True ' Запись в логическую ' переменную значения ' True (Истина) if diskont Then skidka=10 ' Запись в переменную skidka ' значения, если переменная ' diskont содержит True MsgBox skidka ' Отображение значения ' переменной skidka End Sub Sub primer() Dim diskont As Boolean ' Объявление логической ' переменной diskont Dim skidka As Double skidka=0 diskont=False ' Запись в логическую ' переменную значения ' False (Ложь) if diskont Then skidka=10 ' Запись в переменную skidka ' значения, если переменная ' diskont содержит True MsgBox skidka ' Отображение значения ' переменной skidka End Sub

 

Если по результатам проверки необходимо выполнить более одного оператора, то следует воспользоваться следующим синтаксисом:

If <условие> Then

<оператор1>

<оператор2>

End If

Пример:

Sub primer()

Dim p As Double

' Объявление переменной для хранения вещественных чисел

p=InputBox ("Введите число")

' Отображение окна для ввода значения в переменную p

If p>=0 Then ' Действия в случае неотрицательного значения p

p=sqr(p) ' Запись в переменную p корня из значения p

Msgbox "Корень из введенного числа = " & p

' Отображение окна-сообщения со значением переменной p

End if

Msgbox "Конец программы"

' Окно сообщения, отображаемое при любом введенном p

End Sub

С помощью управляющего оператора If...Then...Else можно задать две последовательности действий, одна из них будет выполняться, если условие истинно (Then <операторы>…), а другая – если условие ложно (Else <операторы>…). Синтаксис:

If <условие> Then

<операторы>…

Else

<операторы>…

End If

Для проверки нескольких условий можно использовать логические операторы: AND, OR, XOR, NOT, а также их комбинации.

Пример:

Sub primer()

Dim x As Variant ' Объявление переменной для любых значений

x = InputBox("Введите положительное число")

' Отображение окна для ввода значения в переменную x

If (IsNumeric(x) And x >= 0) Then ' Условие на значение переменной

MsgBox "Спасибо, Вы ввели положительное число!"

' Окно-сообщение, отображаемое при выполнении условия

Else

MsgBox "Вы не ввели то, что требовалось."

' Окно-сообщение, отображаемое при невыполнении условия

End If

End Sub

В составе операторов внутри конструкции If ... можно применять вложенные конструкции If ... ., н.п.:

Sub primer()

Dim x As Variant ' Объявление переменной для любых значений

x = InputBox("Введите что-нибудь")

' Отображение окна для ввода значения в переменную x

If (x = "") Then ' Внешний оператор проверки на пустой ввод

MsgBox "Вы ничего не ввели."

Else

If (Not (IsNumeric(x))) Then ' Вложенный оператор проверки

MsgBox "Вы ввели текст."

Else

MsgBox "Вы ввели число."

End If ' Закрытие вложенного оператора проверки

End If ' Закрытие внешнего оператора проверки

End Sub

Иногда вместо вложенных If… удобнее использовать оператор Elself. При этом каждая следующая проверка происходит только в том случае, если результат предыдущей равен False (Ложь). Синтаксис:

If <условие> Then

<операторы>…

ElseIf <условие> Then

<операторы>...

Else

<операторы>…

End If

Пример:

Sub primer()

Dim p As Double

' Объявление переменной для хранения вещественных чисел

p=InputBox("Введите число")

' Отображение окна для ввода значения в переменную p

If p<3 then ' Проверка первого условия на значение p

Msgbox "p<3" ' Действие при выполнении первого условия

ElseIf p>6 then ' Проверка второго условия на значение p

' (при невыполнении первого)

Msgbox "p>6" ' Действие при выполнении второго условия

Else

' Действия при невыполнении ни первого ни второго условий

MsgBox "3<=p<=6"

End If

End Sub







Дата добавления: 2015-10-15; просмотров: 158. Нарушение авторских прав


Рекомендуемые страницы:


Studopedia.info - Студопедия - 2014-2020 год . (0.004 сек.) русская версия | украинская версия