Similar presentations:
Алгоритмическая структура «ветвление» на языке Visual Basic
1. Алгоритмическая структура «ветвление» на языке Visual Basic
2. Ветвление
В зависимости от истинности или ложностиусловия выполняется одна или другая серия
команд.
да
нет
Условие
• Полная форма
Операторы1
• Неполная форма
да
нет
Условие
Оператор
Операторы2
3. Оператор ветвления If
Полная форма(возможно 2 варианта решения задачи)
If условие Then
операторы -1
да
нет
Условие
Else
операторы-2
Операторы1
Операторы2
End If
4. Задача 1.
Компьютер должен перемножить 2 числа. Если полученноепроизведение превысит 1000, то он должен напечатать:
ПРОИЗВЕДЕНИЕ БОЛЬШОЕ, иначе – ПРОИЗВЕДЕНИЕ
МАЛЕНЬКОЕ. А после этого печатает само произведение.
Dim a, b, p As Integer
a = TextBox1.Text
b = TextBox2.Text
p=a*b
If p > 1000 Then
TextBox3.Text = "Произведение большое"
Else
TextBox3.Text = "Произведение маленькое"
End if
TextBox4.Text = p
5. Оператор ветвления If
Неполная форма(один вариант или больше 2 вариантов)
да
Условие
нет
Оператор
If условие Then операторы
Прописывается столько раз, сколько
вариантов решения задачи
6. Задача 2.
Компьютер должен перемножить 2 числа. Если полученноепроизведение превысит 1000, то он должен напечатать это
произведение.
a = TextBox1.Text
b = TextBox2.Text
p=a*b
If p > 1000 Then TextBox4.Text = p
7.
операторы
любой оператор VB или группа операторов
условие
два выражения, соединенных знаком
сравнения
Знаки
сравнения >, >=, =, <, <=, <>
Пример: If 5*a+4 <= a*b Then a=b-1 Else a=b+5
8.
ФРАГМЕНТ ПРОГРАММЫ (что увидим на экране?)a=10
If a>2 Then TextBox1.text="!!!" Else TextBox1.text="!"
a=4
If a>5 Then a=a+10 Else a=a-1
TextBox1.text=a
s=6
If s-8<>0 Then s=2*s
TextBox1.text=s
s=6
If s<0
Then s=2*s
s=s+1
TextBox1.text=s
9.
Задача 3:Выяснить направление ветвей параболы.
Dim a as integer
…
a = TextBox1.Text
If a>0 Then
TextBox2.Text = “ветви направлены вверх”
Else
TextBox2.Text = “ветви направлены вниз”
End if
10.
Задача 4:Выяснить количество корней квадратного
уравнения.
Dim a, b, c, d as integer
…
a = TextBox1.Text
b = TextBox2.Text
c = TextBox3.Text
d = Math.Sqrt(b) – 4*a*c
If d>0 Then TextBox4.Text = “2 корня”
If d=0 Then TextBox4.Text = “1 корень”
If d<0 Then TextBox4.Text = “нет действительных корней”
11. Логические операции And (и), Or (или)
ФРАГМЕНТa=8 : b=6 :
a=8 :
b=6 :
If a>b And b>1 Then k=1 Else k=0
If a>b And b>7 Then k=1 Else k=0
РЕЗУЛЬТАТ
k=1
k=0
If 8>2 And 3>5 Then k=1 Else k=0
k=0
If c>d And c<d
k=0
Then k=1 Else k=0
12. Несколько And и Or.
Знаками And и Or можно объединять не только два,а сколько угодно условий.
Например:
If a>2 Or x=b Or c<>1 Then k=99 Else k=33
If a>2 And x=b And c<>1 Then k=99 Else k=33
13. Not.
Кроме логических операций And и Or применяетсяеще логическая операция Not (по-русски – НЕ).
Запись If Not a>b Then...
переводится так –
ЕСЛИ НЕПРАВДА, ЧТО a больше b, ТО....
Вот фрагмент:
a=2: b=3: If Not a>b Then k=1 Else k=0
Здесь выполнится оператор k=1, так как неправда, что 2>3.
14. Фрагменты программ
ФРАГМЕНТРЕЗУЛЬТАТ
a=8:
b=6:
If a>b Or b>7 Then k=1 Else k=0
k=1
a=8:
b=6:
If a<b Or b>7 Then k=1 Else k=0
k=0
If 1>2 Or 5<4
Then k=1 Else k=0
k=0