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

4.1. Краткие теоретические сведения

Пример 1. Вычислить значения функции у при x = –2; 1,2; 6:

где a = –1; b = 2.

Схема алгоритма вычисления заданной функции приведена на рис. 4.1.

Программа, реализующая данный

алгоритм, имеет вид:

Option Explicit

Sub PR1( )

Dim a as single, x as single

Dim b as single, y as single

a=Cells(2,2): b=Cells(2,3)

x= Val(InputBox("Введите x"))

If x <–2 Then

y=a*x*x

ElseIf x<=5 Then

y=abs(sin(x))+b

Else

у=a*log(x)/log(10)+b

End If

MsgBox(“x=” & x & “ y=”& y)

End Sub

На схеме алгоритма (см. рис. 4.1) блок 4 проверяет условие x < –2. При выполнении этого условия управление передается блоку 6, в противном случае– блоку 5, где проверяется условие x ≤ 5, и в зависимости от результата проверки управление передается блоку 7 или 8. Блок 9 выводит введенный аргумент и значение функции y, вычисленное в блоке 6, 7 или 8.

Альтернативным оператором для условного оператора перехода с вложениями является оператор выбора Select Case, работающий как множество независимых операторов If. Оператор выбора Select Case удобно использовать, когда в зависимости от значения некоторого выражения, имеющего конечное множество допустимых значений, необходимо выполнить разные действия.

Оператор выбора Select Case имеет вид:

Select Case Тестируемое выражение

Case Условие выбора 1

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

……………

Case Условие выбора n

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

Case Else

Блок операторов

End Select

Тестируемое выражение – это любое численное или строковое выражение (например, имя одной переменной, математическое или численное выражение, но не логическое). Условие выбора – это список логических выражений, отделяемых запятыми. Условие выбора может также определять диапазон значений при использовании оператора To. Ветвь Case может содержать один оператор, несколько или ни одного оператора, и все они будут выполняться, если условие оператора Case истинно.

Пример 2. Наблюдения за 20 машинами показали, что до первого отказа одного из элементов наработка машин представляется исходными данными, приведенными в табл. 4.1. Определить частоту отказа по интервалам пробега.

Таблица 4.1

Статистический ряд

Интервал пробега, км

Частота отказа

От 1001 до 2000

3

От 2001 до 3000

7

4001 и более

10

Программный код:

Option Explicit

Sub PR2 ()

Dim km As Double, P As Double

km = Val(InputBox("Введите интервал пробега"))

Select Case km

Case 1001 To 2000

P = 3/20

Case 2001 To 3000

P = 7/20

Case Is >= 4001

P = 10/20

End Select

MsgBox ("Частость по интервалу пробега равна" & P)

End Sub

Слово Is, используемое в программе, является ключевым словом VBA, обозначающим тестируемое выражение в операторе Case.

В операторе Case допустимо использовать составные условия подобно тому, как это делается в условном операторе.

Пример 3.

Case 5, 6, 9 to 10, 13, 14, Is >=16

В этом операторе проверяется, принадлежит ли значение тестируемого выражения отрезку от 9 до 10 или равняется одному из значений 5, 6, 13, 14, или оно не меньше 16.

Соседние файлы в папке Лаб. работы по VBA