Логические выражения и вычисление их значений. 


Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Логические выражения и вычисление их значений.



Логические выражения называют условиями. Условие, если оно выполняется, имеет значение True, если не выполняется, - False. Эти логические значения являются результатами вычисления логических выражений.

Условия различают простые и сложные.

Для построения простых условий используются операции сравнения: >, <, =, >=,<=, <>.

Для построения сложных условий используются логические операции Not, And, Or.

Результаты выполнения логических операций для логических выражений A и B приведены в таблице 9:

Результаты вычисления логических операций Таблица 9

A B Not A A And B A Or B
True True False True True
False True True False True
True False False False True
False False True False False

 

Программирование ветвлений

 

Ветвление в VISAUL BASIC организуется с использованием:

· условного оператора IF

· встроенной функции IIF

· оператора выбора CASE

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

Для проверки одного условия и выполнения оператора или блока операторов используется оператор IF…THEN. Этот оператор можно использовать с разным синтаксисом: однострочным (линейным) и многострочным (блочным).

а) Однострочный:

If условие Then операторы1 [ Else операторы2]

б) Блочный:

If условие Then

блок операторов1

[ Else

блок операторов2]

End If

Рис. 58. Пример решения задачи с использованием блочного оператора IF.

 

в) Для проверки более одного условия и выполнения одного из нескольких блоков операторов используется оператор вида:

If условие 1 Then

блок операторов 1

ElseIf условие 2 Then

блок операторов 2

……………

ElseIf условие n Then

блок операторов n

[Else

блок операторов Else]

End If

Пример:

Public Function Obr_Err (Err_Num As Integer) _

As Integer

Dim Txt As String

If Err_Num=6 Then

Txt=”переполнение”: Obr_Err=2

ElseIf Err_Num=11 Then

Txt=”деление на нуль”: Obr_Err=2

Else

Txt=”нераспознанная ошибка”&Err_Num: Obr_Err=3

EndIf

Err.Clear

MsgBox Txt, VbOkOnly, “Ошибки выполнения”

End Function

 

Функция IIF

IIF (условие, значение1, значение2)

Эта функция возвращает значение1, если условие истинно и значение2, если условие ложно.

В качестве условия можно использовать логическое выражение, возвращающее значение True (Истина) или False (Ложь), или любое арифметическое выражение (нулевое значение эквивалентно False, а ненулевое – True).

 

Оператор выбора SELECT CASE

Используется для проверки одного условия и выполнения одного из нескольких блоков операторов.

Формат записи оператора:

Select Case проверяемое выражение

Case список выражений 1

операторы 1

Case список выражений 2

операторы 2

Case список выражений 3

операторы 3

……………………………….

Case Else

операторы группы Else

End Select

Проверяемое выражение вычисляется в начале работы оператора Select Case. Это выражение может возвращать значение любого типа (логическое, числовое, строковое).

Список выражений – одно или несколько выражений, разделенных стандартным символом –разделителем(;).

При выполнении оператора проверяется, соответствует ли хотя бы один из элементов этого списка проверяемому выражению. Эти элементы списка выражений могут иметь одну из следующих форм:

- выражение

- выражение 1 To выражение 2

- Is логический оператор(оператор сравнения) выражение

Например, Is >= 10

 

Методы Print и Cls

 

Метод Print применяется для вывода данных в форму или на принтер. Для вывода на принтер используется метод Printer.Print, а для вывода в текущую форму достаточно просто написать Print.

Метод Cls убирает с формы весь текст, выведенный ранее. Если его не вызвать, после нескольких вызовов Print текст исчезает под нижним краем формы.

 

Программирование циклов

 

В VISAUL BASIC существуют три циклические конструкции операторов:

1) For … Next

2) While … Wend

3) Do … Loop

 

Оператор цикла For … Next

Оператор цикла For…Next имеет формат:

For счетчик = начало To конец [Step приращение ]

операторы

Next [ счетчик ]

Рассмотрим пример решения задачи, использующей цикл со счетчиком. Требуется найти сумму 10 чисел.

Private Sub Command1_Click()

Dim b(10) As Integer, s As Integer

s = 0

For i = 1 To 10

b(i) = Val(InputBox("Введите число"))

s = s + b(i)

Next

Print s

End Sub

Оператор цикла WHILE…WEND

Используется для организации циклов с предусловием и имеет следующий формат:

While условие продолжения цикла

операторы тела цикла

Wend

Например, выведем в форму все значения, большие 1, причем каждое последующее значение получается путем деления предыдущего пополам:

Private Sub Command1_Click()

Dim y As Single

y = InputBox("Введите число")

While y > 1

'MsgBox y

Print y

y = y / 2

Wend

End Sub

Оператор цикла DO…LOOP

Используется для организации циклов с неопределенным числом повторений (с предусловием и с постусловием).

Этот оператор для организации цикла с предусловием может использоваться в двух модификациях:

а) Do While условие продолжения цикла

операторы тела цикла

Loop

б) Do Until условие прекращения цикла

операторы тела цикла

Loop

Для организации цикла с постусловием этот оператор также может быть использован в двух модификациях:

в) Do

операторы тела цикла

Loop While условие продолжения цикла

г) Do

операторы тела цикла

Loop Until условие прекращения цикла



Поделиться:


Последнее изменение этой страницы: 2017-02-08; просмотров: 816; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.133.108.241 (0.015 с.)