Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Для заочников (алгор-ия и VBA).doc
Скачиваний:
38
Добавлен:
19.05.2015
Размер:
149.5 Кб
Скачать

3. Арифметические и логические выражения

В VBAарифметические выражениязаписываются только в одну строчку и пропуск знаков операций недопустим.Обозначение операций: + - сложение, – - вычитание, * - умножение, / - деление, ^ - возведение в степень.

Пример:Z= (X+ 3.25 *X^ 2) / (1 –X^ 3) ^ (1/2)

Порядок выполнения операций определяется согласно их приоритетам. Самый высокий приоритет у возведения в степень. Далее выполняются умножение и деление. В последнюю очередь – сложение и вычитание. Нарушить порядок выполнения операций по приоритетам можно с помощью скобок.

Для записи логических выраженийвVBAмогут использоватьсяоперации сравнения: < , >, =, <=, >=, <> (не равно), а такжелогические операции:And– конъюнкция,Or– дизъюнкция,Not– инверсия.

Пример:X>0AndX<=5 – данное логическое выражение будет истинным, если 0<X≤5.

4. Основные операторы языка vba

1. Оператор присваивания.

Синтаксис:[Let] <идентификатор> = <выражение>

Данный оператор вычисляет значение выражения, записанного в правой части (после =), и присваивает полученное значение переменной, чей идентификатор записан в левой части (перед =).

В VBAв левой части может быть записан не только идентификатор переменной, но и идентификатор свойства какого-либо объекта.

Примеры:1)X= 1,2)A= ”Академия”,3)Y= - 1.5,4)Z= 3 +X^ 5 –Sin(Х)

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

Синтаксис:If <условие> Then <оператор 1> [ Else <оператор 2> ]

Условный оператор находит значение условия – логического выражения. Если оно «истина», то выполняется оператор 1. Если оно «ложь», то выполняется оператор 2.

Примеры:

1) If X>0 Then Y = X^ 2 + 3 Else Y = X ^ 3 – 1 (ветвление)

2) IfА>ВThenА = В (обход)

Если требуется задать не одно, а сразу несколько действий после ThenилиElse, то можно воспользоватьсяблочной формой синтаксиса:

If <условие> Then

<оператор 1>

[ Else

<оператор 2>

]

End If

Пример: If X>0 Then

Y = X + Sin ( 3 * X + 8 )

Z = ( Y + 1) / Y ^ 2

Else

Y = 0

Z = 1

End If

3. Оператор цикла с заданным числом повторений.

Синтаксис:

For <идентификатор> = <нач. знач.> To <кон. знач.> [ Step <шаг> ]

<оператор 1>

Next <идентификатор>

В заголовке оператора Forуказывается идентификатор управляющей переменной цикла (как правило, целочисленной). На первом шаге управляющей переменной присваивается начальное значение и выполняется тело цикла (оператор1, …). Затем значение управляющей переменной изменяется на значение шага и опять выполняется тело цикла и т.д.. Последний раз тело цикла выполняется, когда управляющая переменная равна конечному значению. Если шаг равен 1, его можно не указывать (действует принцип по умолчанию).

Пример: For I = 1 To 100

Y(I) = X(I) ^ 2 + X(I) ^ 3

S1 = S1 + X(I)

S2 = S2 + Y(I)

Next I