Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Тема3.doc
Скачиваний:
3
Добавлен:
07.08.2019
Размер:
196.1 Кб
Скачать

Выражения отношения

Операции отношения:

> >= < <= = <>

Операнды могут быть любого типа. Результат этих выражений логический.

"Кот" < "Котик" = True

2>4 = False

Двойные неравенства записываются с помощью логических операций:

A > 5 And A < 10 (5 < A < 10).

Некоторые свойства формы и элементов управления принимают значения True или False. Например, если свойство Visible (Видимость) имеет значение True, то форма или элемент управления видимы. При значении False – не видимы. Свойство Enabled (Доступна) также принимает значение True (форма или элемент управления имеют бледный цвет и не реагируют на какие-либо события (щелчок мыши и т.п.). Эти свойства могут быть операндами логического выражения.

Типовая алгоритмическая конструкция «развилка с условием».

Да Да

Условие Условие

Нет Действие Нет Действие 1

Действие 2

Условие задается рассмотренным логическим выражением. Условие принимает значение «Да» или «Нет». В зависимости от этого, на левой блок-схеме «Действие» выполняется (если условие принимает значение «Да») или не выполняется. На правой блок-схеме выполняется или «Действие 1» (если условие принимает значение «Да»), или «Действие 2» (если условие принимает значение «Нет»).

Условный оператор в Visual Basic (соответствует типовой алгоритмической конструкции «развилка с условием»).

If логическое выражение Then If логическое выражение Then

операторы операторы 1

EndIf Else

операторы 2

End If

Аналогично левой блок-схеме «операторы» выполняются, если логическое выражение принимает значение True. При значении False - не выполняются. «операторы 1» выполняются, если логическое выражение принимает значение True. При значении False - выполняются «операторы 2».

Примеры: If Х>=-5.3 And X<=2.87 Then

If Command1.Visible Then ............................................

............................................ Else

EndIf EndIf

Если в качестве оператора Действие 2 также используется оператор ветвления, то два ключевых слова Else и If можно объединить в одно ElseIf. Получим конструкцию

If ... Then ... ElseIf ... Then ... ElseIf ... Then ... Else ... End If

Пример

If A>B And C=1 Then

count = 2*a+b

N=N+1

ElseIf A<B And C=0 Then

count = (a-b)/3

N=N-1

Else

N=0

End If

Пример проекта.

Добавим на форму предыдущего проекта стандартные элементы:

Дополнительную Командную кнопку (CommandButton2);

Два переключателя (OptionButton)-обычно задаются на форме группой и позволяют выбрать какой-либо один вариант (определяется выбранным переключателем) из нескольких возможных. Из группы переключателей можно выбрать только один.

Выбранный переключатель определяется значением свойства Value, которое принимает значение True (переключатель выбран, в центре кружка жирная точка) или False (переключатель не выбран, в центре кружка нет точки). Щелчок мыши по переключателю переводит его в противоположное от имеющегося состояние.

Метка (Label2), в которой записан вид логического выражения.

Определим свойства элементов:

Переключатель (имя Option1): Caption-Арифм. вычисл.

Переключатель (имя Option2): Caption-Логическ. вычисл.

(Метка (имя Label1): Caption-С=A+B Alignement =2 -Center и BorderStyle = 1-FixedSingle )

Метка (имя Label2): Caption-A>=B And C<5.5. Alignement =2 -Center и BorderStyle = 1-FixedSingle

(Командная кнопка (имя Command1): Caption-Вычислить)

Командная кнопка (имя Command2): Caption-Начало.

Вид спроектированной формы показан на рисунке:

Форма работает по следующей логике: при запуске программы на форме должна появиться только кнопка «Начало». При щелчке мыши по этой кнопке, появляются переключатели «Арифм. вычисл.» и «Логическ. вычисл.». Выбор одного из них обеспечивает при щелчке мыши по кнопке «Вычислить» расчет арифметического или логического выражений, заданных в поле меток.

Процедуры обработки событий: Form_Load() (загрузка формы), Command2_Click() (щелчок мыши по командной кнопке «Начало»), Command1_Click() (щелчок мыши по командной кнопке «Вычислить»):

Private Sub Form_Load() Эта процедура делает все элементы

Label1.Visible = False управления на форме (кроме командной кнопки

Label2.Visible = False «Начало») невидимыми (свойству Visible

Option1.Visible = False элементов присваивается значение False)

Option2.Visible = False

Command1.Visible = False

End Sub

Private Sub Command2_Click() Эта процедура делает элементы видимыми

Command1.Visible = True (свойству Visible элементов присваивается

Option1.Visible = True значение True)

O ption2.Visible = True

Label1.Visible = True

Label2.Visible = True

End Sub

Private Sub Command1_Click()

Dim A As Single, B As Single, C As Single, Rez As Boolean

If Option1.Value Then

A = Val(InputBox("Введите значение первого слагаемого", "Окно ввода"))

B = Val(InputBox("Введите значение второго слагаемого", "Окно ввода"))

C = A + B

MsgBox "Сумма равна " & Str$(C), , "Ответ"

Else

A = Val(InputBox("Введите значение переменной А", "Окно ввода"))

B = Val(InputBox("Введите значение переменной B", "Окно ввода"))

C = Val(InputBox("Введите значение переменной C", "Окно ввода"))

Rez = A >= B And C < 5.5

MsgBox "Значение логического выражения равно " & Str$(Rez), , "Ответ"

End If

End Sub