Урок 5 по VBScript: Условный оператор if…else и select…case

Урок 5 по VBScript: Условный оператор if…else и select…case Программирование на VBSCRIPT

В данной статье мы с вами рассмотрим операторы vbs сценариев, а точнее условные операторы языка vbscript. Условные операторы vbs как и в многих других языках программирования позволяют управлять логикой выполнения кода. Давайте сразу к делу, в этой публикации мы рассмотрим следующие условные операторы языка vbscript: if…Then, if…Then…Else, if…Then…Elseif и оператор выбора Select…Case.

Ну, что же, давайте по порядку.

if…Then — Данная конструкция является самой простой. После ключевого слова if следует проверка условия, если оно истинно, и выполняется, то следует выполнение строки, которая идёт за ключевым словом Then:

if <проверка условия> then <выражение>

if…Then…Else — Данный vbs оператор по сравнению с предыдущей конструкцией имеет дополнительное ключевое слово Else. Данное выражение удобно в том случае, если нам нужно проверить условие, и в зависимости от результата проверки, выполнить то или иное действие. Тут, как и прежде, после ключевого слова if следует проверка условия, если оно истинно (выполняется), то следует выполнение строчки (строк) кода, что находится после ключевого слова Then, если же условие не выполняется, следует выполнение строки кода, что находится после Else:

if <проверка условия> then <выражение1> else <выражение2>

if…Then…Elseif — Этот условный оператор vbs содержит в себе, фактически два оператора vbs (if…Then), то есть, сначала, как и прежде следует проверка условия, далее, если условие истинно, идёт выполнение кода после ключевого Then, если же условие проверки не выполняется (ложное), то идет новая проверка, после ключевого слова Elseif, далее могут следовать заново ключевые слова then и else:

if <проверка условия1> then <выражение1> elseif < проверка условия2><новые условные операторы vbs>

Стоит помнить, что, для закрытия блока условного оператора vbs следует в конце прописывать ключевое слово Endif.

Оператор if then, if then else и if then elseif языка vbscript

Что бы закрепить прочитанное, давайте рассмотрим следующий пример сценария vbscript. Так как изначально, назначением языка программирования было решение математических уравнений и выполнение различных математических вычислений, мы, что бы не изменять традиции, решим простое квадратное уравнение:

' *****************************************************************************
' Пример работы с условным оператором if
' if_then.vbs
' *****************************************************************************
 
' Включаем проверку переменных
Option Explicit
' Объявляем переменные
Dim x1, x2, x                              ' варианты решения
Dim a, b, c                                  ' будут хранить значения
Dim D, msg                                ' Дискриминант и сообщение
 
' Назначаем значения
a=-10
b=20
c=100
 
'Ищем дискриминант
D=b^2-4*a*c
 
'Если дискриминант равен нулую - одно решение
if D=0 then
     x=-b/(2*a)
     msg="Уравнение имеет одно решение, x ровно: " & x
'Если дискриминант больше нуля - два решения
elseif D>0 then
     x1=(-b+sqr(D))/(2*a)
     x2=(-b-sqr(D))/(2*a)
     msg="Уравнение имеет два решения" & vbCrLf & "x1 ровно: " & x1 & vbCrLf & "x2 ровно: " & x2
'Если дискриминант меньше нуля - нет решения   
else
     msg="Нет решения (комплексные числа)"
End If
MsgBox msg

Тут в принципе всё просто, вначале мы находим дискриминант, результаты решения могут быть только три, если дискриминант равен нулю, то уравнение имеет только одно решение, если значение дискриминант больше нуля – то у уравнения есть два решения, ну и третий вариант – значение D отрицательное, в таком случае у уравнения нет решений, хотя… они есть, только мы получим комплексные числа.

Скачать архив с примерами

Хорошо, теперь давайте рассмотрим условный оператор выбора vbs сценариев – select case:

Select…Case — Конструкция Select…Case полезна в том случае, когда в результате математических вычислений и не только, мы знаем, какое значение переменной можем получить, и в зависимости от значения, нужно выполнить то или иное выражение. В отличии от if тут нет проверки условия, поэтому для решения того же квадратного уравнения мы не можем воспользоваться оператором vbs select…case, если только не прибегать к некоторым ухищрениям.

Общий синтаксис:

Select <переменная> Case
Case <значение1>
Case <значение2>
Case <значение3>

Case <значениеn>
Case Else
End Select

Оператор VBScript select csse

Давайте рассмотрим такой пример:

' *****************************************************************************
' Пример работы с условным оператором select...case
' select_case.vbs
' *****************************************************************************
' Включаем проверку переменных
Option Explicit
' Объявляем переменные
Dim a, b
a=10
 
Select case a
     case 5
                 b=a+500
     case 10
                 b=a+100
     case else
                 b=a
End Select
 
MsgBox b

Параллельно с условными операторами vbs часто применяются логические операторы, наиболее популярны: And – И, Not – НЕТ иOr – ИЛИ.

Оцените статью
Технологии программирования и ведение блога
Добавить комментарий

  1. АлександрVBS

    на картинке ошибка

    не правильно
    Select переменная case

    правильно Select case переменная

    Ответить