Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
КОНСПЕКТ ЛЕКЦИЙ(рус).doc
Скачиваний:
80
Добавлен:
09.02.2016
Размер:
2.29 Mб
Скачать

14.3. Оператор выбора Select Case

Для решения поставленной задачи удобно использовать оператор выбора Select Case. Синтаксис оператора Select Case:

Select Case селектор

Case 1-й установленный диапазон значений селектора : оператор 1

Case 2-й установленный диапазон значений селектора : оператор 2

-----------------------------------------------

Case n- й установленный диапазон значений селектора : оператор n

Case Else: оператор n+1

End Select

Селектор – переменная, значение которой до входа в оператор Select Case должно быть известно. Если это значение совпадает с 1-м установленным заранее диапазоном значений, то выполняется оператор 1 и управление передается на End Select. Если значение не совпадает, происходит сравнение со вторым диапазоном и т.д.

Способы задания установленного значения селектора:

  1. Перечнем значений через запятую (например: Case 2,5,8 ...)

  2. Диапазоном значений ( Case 2 to 10)

  3. Ключевым словом Is, справа от которого записывается оператор отношения, например, Case is < 2.

Запишем процедуру отклика командной кнопки CommandButton1 для решения данной задачи:

Private Sub CommandButton1_Click()

Dim x, y As Single 'Объявление типов переменных Х и Y

x = Val(InputBox(" Введите значение х ")) ' Ввод текущего значения Х

Select Case x ' Начало оператора Select Case

Case 1,3,5,6: y=sin(x)

Case 8 to 10 : y=Tan(x)

Case 15 to 20: y=Log(x)

Case is >30: y=x^2.5

Case Else: y=0 ' В остальных случаях

End Select ' Конец оператора Select

MsgBox “y=” & y

End Sub

Пример 14.4. По вводимым буквам русского алфавита А, Б, Д вывести слова Одесса, Николаев, Херсон. Сделать контроль ввода.

Private Sub CommandButton2_Click()

Dim x, y As String 'Объявление типов переменных Х и Y

x = InputBox(" Введите заданный символ") 'Ввод текущей буквы

Select Case x ' Начало оператора Select Case

Case “А“: y = " Одесса "

Case “Б“ : y = " Николаев "

Case “Д“: y = " Херсон "

Case Else: MsgBox " Ошибочный ввод" ' Проверка ввода

End Select ' Конец оператора Select

MsgBox y

End Sub

Глава 15. Организация циклических программ в vba

15.1. Простые циклические программы с оператором if

Пример 15.1. Составить программу для решения задачи табулирования функции у=х2 при х=xn, xk, dx т.е. параметр цикла х изменяется от xn до xk с шагом dx.

Используем простой циклический алгоритм (глава 10. рис. 10.5,а ).

Процедура отклика командной кнопки

Private Sub CommanButton1_Click

Dim x, y, xn, xk, dx As Single

xn=-1: xk=1: dx=0.2

x=xn

1: y=x^2

Debug.Print “ x= “; x ; “ y=”; y

x=x+dx

If x<=xk Then GOTO 1

End Sub

Алгоритм и программа могут быть представлены более компактно, если применить блок модификации и соответствующий ему оператор цикла For ..Next.