Автор работы: Пользователь скрыл имя, 25 Ноября 2014 в 03:48, реферат
Программы, составленные исключительно из операторов присваивания и ввода-вывода, могут иметь только линейную структуру. Между тем, часто бывает нужно, чтобы какой-нибудь блок программы выполнялся или не выполнялся в зависимости от задаваемого условия. Для подобного разветвления вычислительного процесса служат условные операторы.
Содержание
Программы, составленные исключительно из операторов присваивания и ввода-вывода, могут иметь только линейную структуру. Между тем, часто бывает нужно, чтобы какой-нибудь блок программы выполнялся или не выполнялся в зависимости от задаваемого условия. Для подобного разветвления вычислительного процесса служат условные операторы. Оператор условного перехода - это структура, которая выбирает ту или иную ветвь кода процедуры на основе некоторого предопределенного условия или группы условий. В рамках данного реферата мы рассмотрим одну из самых простых тем программирования на языке Visual Basic – это условный оператор IF.
Условный оператор позволяет проверить некоторое условие и в зависимости от результатов проверки выполнить то или иное действие. Таким образом, условный оператор – это средство ветвления вычислительного процесса.
В общем виде полный условный оператор выглядит следующим образом:
If Логическое выражение Then Оператор
Else Оператор End If
Эта запись читается следующим образом: «если логическое выражение справедливо, то выполняется первый оператор, если ложно — второй оператор».
Пример полного условного оператора:
IF j<0 THEN i=i+1 ELSE j=j+1 END IF
В общем виде сокращенный условный оператор выглядит следующим образом:
If Логическое выражение Then Оператор
Эта запись читается следующим образом: «если логическое выражение справедливо, то выполняется указанный оператор, в противном случае никаких дополнительных изменений в вычисления не приносится».
Примеры использования условного оператора в сокращенной форме:
IF X>Y THEN Max=X
или
IF B=0 THEN A=Y/X
Рассмотренные нами выше условные операторы были записаны в одну строку и поэтому относятся к разновидности однострочных условных операторов (однострочный синтаксис записи условного оператора). Однострочные условные операторы применяют, если в случае истинности или ложности заданного условия должен быть выполнен только один оператор (каждая из ветвей алгоритма, входящая в условный оператор, содержит по одному оператору).
Но часто в программах при использовании условного оператора требуется, чтобы в случае истинности либо ложности условия выполнялся не один, а несколько операторов:
В таких случаях применяется блочный синтаксис записи условного оператора (блочный условный оператор).
Рис.1 - Блочная запись условного оператора
Примеры блочного синтаксиса условного оператора:
‘ Блочный оператор сокращённой формы
IF X<>0 THEN
A = Y/X
MsgBox «A= » + STR(A)
End If
‘ Блочный оператор полной формы
IF X<Y THEN
Y = 2*K
X = Y^K
ELSE
X = X+0.01
Y = Y-K
End If
Операторы, включаемые в условный оператор, в свою очередь также могут быть условными.
В таких случаях, когда блок операторов нужно выполнять после проверки не одного, а нескольких условий, применяют условный оператор вложенной формы.
IF условие 1 Then
IF условие 2 Then
Оператор 2
End If
ELSE
Оператор 1
End If
Рассмотрим фрагмент программы с условным оператором вложенной формы:
IF j>0 THEN
IF X<Y THEN
X=X+0.5
End If
ELSE
Y=Y+0.5
EndIf
Операции отношения позволяют сравнивать 2 значения, результатом сравнения являются данные логического (boolean) типа, а именно- правда или ложь (true или false).
В Visual Basic имеются следующие операции отношения:
= — равно;
< > — не равно;
< — меньше;
> — больше;
<= — меньше или равно;
>= — больше или равно.
Если сравнение справедливо (соответствует действительности), то результатом будет правда (true), в противном случае — ложь (false).
Построенные с помощью операций отношения простые пары сравнений типа A>B или С=8 могут объединяться в более сложные логические выражения с помощью логических операций: OR (или), AND (и), NOT (не): (A=B) AND (C>D).
Пример:
Дано число F. Удвоить его, если оно входит в диапазон от 1 до 9.
Option Explicit
Sub Primer( )
Dim F As Single
F=VAL(InputBox(«F= «,»»,»»))
IF (F>=1) AND (F<=9) THEN F=F*2
MsgBox «F= «+STR(F)
End Sub
Поскольку Visual Basic поддерживает логический тип данных, в нем имеются ряд логических функций, позволяющих записывать соответствующие выражения
Рис.2 - Основные логические функции в Visual Basic
Если при выполнении какого-либо условия необходимо выполнять один оператор, то нужно использовать конструкцию следующего вида:
If условие Then оператор
В том случае, когда результатом проверки условия является значение True (истина), то выполняется оператор, находящийся после служебного слова Then. С другой стороны, если после проверки условия было получено значение False (ложь), то выполнить следующий по порядку оператор. Все описанные параметры данной структуры должны быть указаны в одной строке.
Если при выполнении условия требуется выполнить не один, а несколько операторов, то следует использовать такую конструкцию:
If условия Then
Операторы
End If
В случае истинности проверяемого условия будут выполнены операторы, расположенные после ключевого слова Then. С другой стороны, если условие является ложным, то выполняется следующий после данной конструкции оператор. В том случае, когда в блоке операторы находится только один оператор, то данная структура все равно должна заканчиваться служебным словосочетанием End If.
При необходимости выполнении того или иного оператора (или блока операторов) в зависимости от результата проверки определенного условия, в языке Visual Basic следует использовать такую конструкцию:
If условия Then
Операторы1
Else
Операторы2
End If
Или
If условие Then
Операторы1
Else: Операторы2
End If
Если результат проверки условия является значение True, то будет выполнен блок операторы1, находящийся после ключевого слова Then. С другой стороны, если проверка условия дала результат False, то будет выполнен блок операторы2, расположенный после служебного слова Else.
Во втором из приведенных вариантов в качестве блока операторы2 может использоваться как один оператор (тогда он записывается после знака ":" в той же строке, что и служебное слово Else), так и несколько (при этом каждый оператор, начинается со второго, записывается в отдельной строке).
В том случае, когда определенное действие (или набор действий) нужно выполнять после проверки не одного, а нескольких условий на языке Visual Basic следует использовать такую управляющую структуру:
If условие Then
Операторы1
ElseIf условие2 Then
Операторы2
.
.
[Else
ОператорыN]
End If
Если условие1, находящееся после ключевого слова If, истинно, то выполняется блок операторы1, расположенный после Then. Если же оно ложно, то осуществляется проверка условия2, находящегося после служебного слова ElseIf, в случае его истинности выполняется блок операторы2 и т.д. Если ни одно из условий не является истинным, то есть результатом всех проверок является значение False, то выполнятся блок операторыN, расположенный после ключевого слова Else (данный блок является необязательным).