Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Методика по Информатике / VBA / Голубева Н.В.-VBA(Д1м-к-краткий курс лекций).doc
Скачиваний:
102
Добавлен:
10.04.2015
Размер:
508.42 Кб
Скачать

Запуск программы на выполнение

из редактора Visual Basic (3  способа)

1.   Кнопка на панели инструментов стандартной

2.   В меню Run

Run Sub/UserForm

3.   Клавиша F5

Разветвляющиеся вычислительные процессы

Разветвляющиеся алгоритмы предполагают наличие хотя бы одного условного блока, который позволяет реализовать два варианта (пути) вычислений, в зависимости от выполнения заданного условия.

Для реализации разветвлений в программе в VBA есть оператор условного перехода и оператор выбора.

Оператор условного перехода

имеет несколько разновидностей.

  1. Однострочный

If  [условие] Then [оператор]

Условие (логическое выражение) реализуется с помощью операций отношения и логических операций.

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

=     равно                                >       больше

< >   не равно                          <=      меньше или равно

<     меньше                            >=  больше или равно

ПРИМЕЧАНИЕ: Сравнивать можно числовые и строковые значения. Результатом сравнения может быть True (истина) либо False (ложь).

If k>9 Then MsgBox “Тест завершен”

Если условие k>9 принимает значение True (истина), то будет выполняется оператор вывода сообщения MsgBox.

Если условие принимает значение False (ложь), то управление передается на следующую программную строку.

2.  Блочный                          If  [условие] Then

   [операторы]

   End If

3.   If  [условие] Then

[операторы, если условие = True]

E

Передача управления на программную строку, следующую за End If

lse

[операторы, если условие = False]

End If

……………….

Пример  2 Вычислить значение функции

, где a = 3,9

1.   Составим алгоритм решения задачи.

Блок 2 – присваивается значение переменной а.

Блок 3 – вводится значение аргумента x.

Блок 4 – анализирует значение аргумента x: при истинности условия вычислительный процесс идет по ветви 1 (выход «да»), если условие ложно реализуется ветвь 2.

  1. В окне редактора кода введем программный код:

Sub Простое_ветвление ()

Dim a As Single, x As Single, y As Single

a = 3.9

x = Val(InputBox ("Ввод x")) ‘ввод значения аргумента x

If x < a Then

y = Exp(a * x) ‘ вычисление значения функции y, когда

‘ условие x < a истинно (True)

Else

y = Cos(3 * x) ‘ вычисление значения функции y, когда

‘ условие x < a ложно (False)

End If

MsgBox "x=" & x & " y=" & y

End Sub

Пример  3 Вычислить значение функции при b = 3

Sub сложное _ветвл ()

Dim b As Single, x As Single, y As Double

b = Cells(2, 1) 'ввод значения b из ячейки A2

x = Val(InputBox("ввод x"))

If x < 2 Then

y = Abs(x)

Else

If x < 10 Then 'вложенный оператор If

y = x ^ 3 - b

Else

y = Sqr(x + b)

End If

End If

Cells(3, 1) = x : Cells(4, 1) = y 'вывод значения аргумента x

'в ячейку A3 и значения функции y в ячейку A4

E

Знак : объединяет несколько операторов в одной программной строке

nd Sub