Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
VB_6.doc
Скачиваний:
97
Добавлен:
01.12.2018
Размер:
3.77 Mб
Скачать

3.4. Логические выражения.

Логическим называется выражение, которое после его вычисления принимает одно из двух значений: True или False. Логические выражения могут содержать константы, переменные, функции и операции над ними. Операции, используемые в логических выражениях, делятся на операции отношений и логические операторы. Операции отношений это: <, <=, =, >, >=. К логическим операторам относятся: Not, And, Or, Xor, Eqv, Imp. Оператор Not одноместный, он инвертирует значение логической переменной. Если “а” логическая переменная, то Not a = False, когда a = True и наоборот. Остальные операторы двуместные. Если A и B логические переменные, то результат применения к ним логических операторов будет:

Таб. 3.4.

A

B

A And B

A Or B

A Xor B

A Eqv B

A Imp B

True

False

False

True

True

False

False

False

True

False

True

True

False

True

True

True

True

True

False

True

True

False

False

False

False

False

True

True

Пример. Определить, принадлежит ли х одному из отрезков АВ или CD.

Private Sub Command1 Click()

Dim A%, B%, C%, D%, x!, Rez As Boolean

Rez = (A <= x And x <= B) Or (C <= x And x <= D)

End Sub

Общие требование ко всем операциям отношений: сравниваемые операнды должны быть одного типа (оба числовые, оба – строковые, оба – даты и т.д.) либо приводимые друг к другу.

3.5. Управляющие конструкции.

Все операторы VB можно разделить на 2 вида: выполняемые операторы, которые производят вычисления, и операторы управления, которые ничего не вычисляют, а используются для управления вычислительным процессом.

Только самые простые задачи могут быть решены с помощью линейного вычислительного процесса. В большинстве случаев ходом решения задачи необходимо управлять. К управляющим конструкциям относятся: условный оператор, оператор выбора и операторы циклов.

3.5.1. Операторы ветвлений.

3.5.1.1. Условный оператор.

В тех случаях, когда нужно выполнить один или группу операторов при определённом условии, используются условные операторы. Они имеют следующие формы записи:

1. Однострочный условный оператор:

If <условие> Then <список операторов1> Else <список операторов2>

Здесь:

<условие > это любое логическое выражение;

<список операторов_1> это перечень разделенных двоеточием операторов, которые должны выполняться в том случае, если значение логического выражения равно True;

<список операторов_2> это перечень разделенных двоеточием операторов, которые должны выполняться в том случае, если значение логического выражения равно False.

2. Многострочный условный оператор:

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

<список операторов_1>

ElseIf <условие_2> Then

<список операторов_2>

. . . . . . . . . . .

ElseIf <условие_N> Then

<список операторов_N>

Else

<список операторов_ N+1>

End If

В однострочном условном операторе может отсутствовать альтернативная часть (блок Else) и совершенно исключено присутствие блоков ElseIf.

В многострочном условном операторе может не быть как блоков ElseIf, так и блока Else.

Условные операторы могут быть вложенными. В качестве выполняемых операторов в многострочном условном операторе может быть любой допустимый оператор VB, в том числе и другой условный оператор. В однострочном условном операторе – только те операторы управления, которые допускают запись в одну строку, т.е. фактически только однострочный же условный оператор.

Условные операторы без блока Else работают следующим образом: поочередно проверяются все имеющиеся в условном операторе условия и выполняется группа операторов, соответствующая тому из условий, которое оказалось истинным. Затем выполняется оператор, следующий за данным условным оператором. Если такого условия нет, то выполняется оператор, следующий за данным условным оператором.

Условные операторы с блоком Else работают следующим образом: поочередно проверяются все имеющиеся в условном операторе условия и выполняется группа операторов, соответствующая тому из условий, которое оказалось истинным. Затем выполняется оператор, следующий за данным условным оператором. Если такого условия нет, то выполняются операторы, соответствующие блоку Else. Затем выполняется оператор, следующий за данным условным.

Пример. Найти наибольшее из трёх чисел: a, b, c.

If a > b Then

If a > c Then

max = a

Else

max = c

End If

Else

If b > c Then

max = b

Else

max = c

End If

End If

Этот пример приведен только для иллюстрации вложенности условных операторов, т.к. данная задача может быть решена значительно проще:

max = a

If b > max Then max = b

If c > max Then max = c

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]