Приложение - проект cravnenie;
проект funkziy
Занятие 20. Вложенные операторы ветвления. Составные логические выражения
I. Вложенные операторы ветвления.
Внутри ветвления могут находиться как линейные фрагменты алгоритма, так и другие ветвления.
В языке Visual Basic.NET вложенные операторы ветвления If имеют вид:
Вариант 1 Вариант 2
If <условие 1> Then <Операторы 1> Elself <условие 2> Then <Операторы 2> End If |
if <условие 1> then <Операторы 1> elseif <условие 2> then <Операторы 2> . . . elseif <условие n-1> then <Операторы n-1> else <Операторы n> endif |
Оператор работает следующим образом:
- если (If) выполняется <условие 1>, то (Then) будет выполнена последовательность операторов <Блок 1>,
- иначе если (ElseIf) выполняется <условие 2>, то (Then) будет выполнен <Блок 2> ,
и т.д.,
- иначе (Else) - <Блок N>
Пример алгоритма с ветвлением в ветвлении.
Даны два числа. Определить, равны ли они. Если нет, то какое из них больше?
Блок - схема алгоритма.
Программный код.
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
Dim x, y As Integer
x = Val(InputBox("", "Введите первое число"))
y = Val(InputBox("", "Введите второе число"))
If x = y Then
MessageBox.Show(Str(x) & "=" & Str(y), "сравнение чисел")
ElseIf x > y Then
MessageBox.Show(Str(x) & ">" & Str(y), "сравнение чисел")
Else : MessageBox.Show(Str(x) & "<" & Str(y), "сравнение чисел")
End If
End Sub
II. Составные логические выражения
Логическое выражение в команде ветвления может быть простым или составным. Составные логические выражения образуются из простых путем использования операций конъюнкции(and), дизъюнкции (or), отрицания (not). Порядок выполнения этих операций в Visual Basic такой же, как и в математической логике.
Пример. Вычислить значение заданной функции
Блок-схема задания. | Интерфейс проекта. |
Программный код.
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim x, y As Single
x = Val(TextBox1.Text)
If (x > -3) And (x < 5) Then
y = 2 * x - 12
Label5.Text = "выполняется условие true"
Else
y = 7 - 8 * x
Label5.Text = "выполняется условие false"
End If
Label4.Text = y
End Sub