logo
информ

21)Условный оператор if…then

If ... Then — линейный и блочный.

Линейный оператор чтобы выполнить какой-либо один оператор, если некоторое условие будет истинным.

Синтаксическая конструкция

If <Условие> Then <Оператор_1> Else <Оператор_2>

При значении Условия = True выполняется Оператор_1, следующий за словом Then, а затем следующий за условным оператор. Если Условие принимает значение False, то выполняется следующий за Else оператор Оператор_2. Else может отсутствовать, тогда оператор называется безальтернативным и, если Условие= True, то выполняется Оператор_1, а затем следующий за условным оператор. Если Условие= False, а выполняется следующий оператор.

Блочный оператор имеет синтаксис:

If <Условие_1> Then

<Операторы_1, если Условие=True>

[ElseIf <Условие_2> Then

<Операторы_2, если Условие_2=True>]

[ElseIf <Условие_3> Then

<Операторы_3, если Условие_3=False>]

[Else

<Операторы>]

End If

<Условие_1> – необходимая часть оператора, это то Условие, которое должно проверяться. Если значение этого условия True, то выполняется Операторы_1 следующие за словом Then. Если необходимо проверить еще условия, то добавляется зарезервированное слово ElseIf с последующим условием. Если Условие_2=True, то выполняются Операторы_2. Если необходимы еще условия, то добавляются еще структура ElseIf и если все Условия не выполняются, то выполняются Операторы следующие за словом Else.

Операторы If могут быть вложенными друг в друга. Такое вложение операторов применяется, если нужно проверить какое-либо условие при другом условии, которое является True и включить альтернативу Else.

Задача 6 (алгоритм ветвления) Найти наибольшее из трех чисел a,b и c. Составить программу.

Решение

Дано: три числа a, b, c.

Найти: наибольшее из трех чисел.

Набирать процедуру на месте курсора:

Private Sub CommandButton1_Click()

Dim a, b, c As Single

Dim max As Single

’Ввод данных

a = Range("A1").Value

b = Range("B1").Value

c = Range("C1").Value

’Вычисление

If a > b And a > c Then

max = a

Else

If b > c Then

max = b

Else

max = c

End If

End If

’Вывод результатов в ячейку B4

Range("B4").Value = "Максимальное число = " & max

End Sub