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

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

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

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

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

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

Пример: X>0 And X<=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