Условный оператор
Выполнил: студент 52 группы Миниахметов Р. Ф.
Руководитель: Волкова Т.И.
БирГСПА , 2010 год
- Условный оператор.
- Синтаксис условного оператора.
- Задачи.
- Тест.
На практике решение большинства задач не удается описать с помощью программ линейной структуры. При этом после проверки некоторого условия выполняется та или иная последовательность операторов, однако происходит нарушение естественного порядка выполнения операторов. Для этих целей используют управляющие операторы.
Оператор условного перехода – это структура, которая выбирает ту или иную ветвь кода процедуры на основе некоторого предопределенного условия или группы условий.
Оператор безусловного перехода – это оператор, просто изменяющий последовательность выполнения кода процедуры независимо ни от какого конкретного условия. Условный переход используется гораздо чаще, чем безусловный.
Выполнение условного оператора заключается в следующем: анализируется некое условие, сформулированное в операторе. Если это условие истинно (значение True), то выполняется один блок операторов, если ложно (значение False) – то другой блок операторов.
Фрагмент блок-схемы алгоритма условного блока можно представить следующим образом:
Если условие истинно, то выполняется блок операторов S1, если условие ложно, то выполняется блок S2.
Оператор … перехода – это структура, которая выбирает ту или иную ветвь кода процедуры на основе некоторого предопределенного условия или группы условий.
Простейшими VBA-операторами изменения порядка выполнения кода являются операторы If … Then и If … Then … Else.
Оператор If … Then позволяет выбрать единственную альтернативную ветвь кода в процедуре или функции.
Синтаксис
If условие Then оператор,
где условие - любое логическое выражение;
оператор – один, несколько или ни одного оператора VBA.
Вторая форма синтаксиса оператора If … Then называется блоком оператора if. В блоке оператора If … Then условие и операторы записываются в отдельных строках, причем заканчивается данный оператор ключевыми словами End If.
Синтаксис
If условие Then
оператор 1
оператор 2
… .
Оператор n
End If
Синтаксис оператора If … Then … Else
Блок операторов If … Then … Else легче читать и понимать, и поскольку можно располагать операторы в разных строках внутри блока оператора If … Then … Else, он не имеет ограничения по размеру и числу операторов, которые можно помещать в альтернативные ветви.
Синтаксис
If условие Then
Оператор1
Else
Оператор2
End If
If (a = b) Or (c d) Then
b = d
a = 20
Else
c = d
End If
Выражение c=d будет выполнено только в том случае, если ab или c=d.
Оператор If может быть вложенным, т. е. находиться внутри блоков операторов. Для проверки более одного условия и выполнения одного из нескольких блоков операторов используется расширенный условный оператор вида:
If Then
Elself Then
Elself Then
[Else
]
End If
0 Then c=a + b MsgBox (c) End If If a с=a * b MsgBox (с) End If End Sub В данной программе переменной а присвоено значение меньше нуля, следовательно, должна выполниться нижняя инструкция If. " width="640"
Dim a, b, c As Integer
Sub poradok()
a=-5
b=25
If a 0 Then
c=a + b
MsgBox (c)
End If
If a
с=a * b
MsgBox (с)
End If
End Sub
В данной программе переменной а присвоено значение меньше нуля, следовательно, должна выполниться нижняя инструкция If.
0 Then c=a + b MsgBox (c) Else c=a * b MsgBox (c) End If End Sub " width="640"
Примечание. Данную программу можно составить, используя полный блок инструкции If Then Else.
Dim a, b, c As Integer
Sub poradok()
a=5
b=25
If a 0 Then
c=a + b
MsgBox (c)
Else
c=a * b
MsgBox (c)
End If
End Sub
Чего не хватает
If условие Then
Оператор1
Else
Оператор2
Задачи
По введенному числу определить социальный статус человека.
Составим программу на visual basic
Далее
VBA предоставляет сокращенную версию оператора If..Then..Else, являющуюся сжатым эквивалентом вложенных операторв If..Then..Else, использованных в листинге. Такой краткой формой является операторIf..Then..ElseIf
Какое значение будет выведено на экран при выполнении следующих операторов?
V=5
t=40
s=100
if t
label1.caption = s
100
200
300
40
Итоговый тест
10 вопросов
Количество верных ответов соответствует количеству набранных баллов. Максимальное количество баллов – 10 , минимальное – 0.
В каком случае используется
условный оператор?
Когда нужно....
Вычислить значение переменной
Увеличить значение переменной
Выполнить действия несколько раз
Ни в одном из перечисленных случаев
0 Then c=a + b MsgBox (c) End If If a c=a * b MsgBox (c) End If End Sub " width="640"
Запишите результат работы программы
Dim a, b, c As Integer
Sub poradok()
a=5
b=25
If a 0 Then
c=a + b
MsgBox (c)
End If
If a
c=a * b
MsgBox (c)
End If
End Sub
100 and c c=2*b else c=0 end if If c100 and c If c100 and c else c=0 If c100 and c c=2*b else c=0 If 100 c=2*b else c=0 end if " width="640"
Где условный оператор написан без ошибок
If c100 and c
c=2*b
else
c=0
end if
If c100 and c
If c100 and c
else c=0
If c100 and c
c=2*b
else
c=0
If 100
c=2*b
else
c=0
end if
Где использованы условные операторы?
x = x +3
if x
for x=1 to 10
If x
else x=x+1 end if
Расположите по порядку:
а) Then
1
б) If
2
в) End if
3
г) Else
4
С помощью условного оператора нельзя реализовать
проверку допустимости значения введенных величин
обход выполнения группы действий
проверку выполнения заданного условия
все перечисленное можно реализовать с помощью
условного оператора
30 then s= t *v+100 label1.caption = s 100 200 30 300 " width="640"
Какое значение будет выведено на экран при выполнении следующих операторов?
V=5
t=40
s=100
if t30 then s= t *v+100
label1.caption = s
100
200
30
300
0 then y=100 if x If x else y=x^2 нет оператора с ошибкой " width="640"
Где в записи условного оператора есть ошибка?
If x0 then y=100
if x
If x
else y=x^2
нет оператора с ошибкой
Какое значение будет выведено на экран при выполнении следующих операторов?
V=5
t=40
s=100
if s
label1.caption = s
100
200
300
40
0 then y=x else y= - x label1.caption = x 6 0 -6 -36 " width="640"
Какое значение будет выведено на экран при выполнении следующих операторов?
x=-6
if x0 then y=x else y= - x
label1.caption = x
6
0
-6
-36