Лекции.Орг


Поиск:




Категории:

Астрономия
Биология
География
Другие языки
Интернет
Информатика
История
Культура
Литература
Логика
Математика
Медицина
Механика
Охрана труда
Педагогика
Политика
Право
Психология
Религия
Риторика
Социология
Спорт
Строительство
Технология
Транспорт
Физика
Философия
Финансы
Химия
Экология
Экономика
Электроника

 

 

 

 


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




 

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

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

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

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

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

 

 

Таблица 7.3

Таблица истинности

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,

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

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

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

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

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

б) Блочный:

If условие Then

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

[ Else

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

EndIf

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

 
 

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

в) Для проверки более одного условия и выполнения одного из нескольких блоков операторов используется оператор 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

 

Оператор выбора 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

 
 

Пример процедуры, использующей оператор выбора, представлен на рис. 7.8.

Рис. 7.8. Пример решения задачи с использованием оператора
Select Case.

Методы 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 [ счетчик ]

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

 

Private Sub Command1_Click()

Dim a(7) As Integer, s As Integer

s = 0

For i = 1 To 7

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

s = s + a(i)

Next

Print s

End Sub

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

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

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

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

Wend

Рассмотрим пример решения задачи 4 - вывести в форму все значения, большие 1, причем каждое последующее значение получается путем деления предыдущего пополам. Блок-схема решения этой задачи приведена на рис. 6.7.

 

Private Sub Command1_Click()

Dim x As Single

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

While x > 1

Print x

x = x / 2

Wend

End Sub

 

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

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

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

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

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

Loop

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

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

Loop

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

в) Do

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

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

г) Do

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

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

На рис. 7.9 приведен пример использования цикла с постусловием для решения задачи сортировки одномерного массива по возрастанию элементов.

Рис. 7.9. Пример использования цикла с постусловием.





Поделиться с друзьями:


Дата добавления: 2015-11-05; Мы поможем в написании ваших работ!; просмотров: 549 | Нарушение авторских прав


Поиск на сайте:

Лучшие изречения:

Вы никогда не пересечете океан, если не наберетесь мужества потерять берег из виду. © Христофор Колумб
==> читать все изречения...

2339 - | 2145 -


© 2015-2025 lektsii.org - Контакты - Последнее добавление

Ген: 0.012 с.