Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Язык Visual Basic for Applications Билеты Bilety_Po_Programmirovaniyu.docx
Скачиваний:
30
Добавлен:
15.03.2015
Размер:
458.22 Кб
Скачать

Вопрос №6 Операции. Приоритет операций. Примеры.

Для выполнения вычислений и других манипуляций в VBA применяются выражения. Выражение - это любая комбинация операндов или элементов данных (чисел, констант, переменных, функций и других операндов) и знаков операций. Знаки операций - это символы, которые используются для соединения операндов в выражении. Операнды (operands) в программировании - это объекты, над которыми выполняются определенные действия (операции).

Операции в VBA - это действие, которые производятся над операндами. Знаки операций в выражении имеют свои приоритеты. Выражения могут состоять из одного операнда, а могут состоять из сложной комбинации операндов и знаков операций. Результатом вычисления выражения является значение, которое должно иметь допустимый в VBA тип данных. Необходимо отметить, что в одном выражении нельзя использовать несовместимые типы данных.

К операциям, которые используются для записи выражений в VBA, относятся: операции присваивания; математические операции; логические операции; операции сравнения (отношений); операции для работы со строками (строковые операции (только одна – сцепление строк- конкатенация).

Приоритет операций

Операция

Символ оператора

Арифметические

Возведение в степень

Отрицание (унарная операция)

Умножение, деление

Целочисленное деление

Деление по модулю

Сложение, вычитание

Конкатенация (сцепление) строк

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

Логические операторы

Отрицание

Логическое И

Логическое ИЛИ

Исключающее ИЛИ

Эквивалентность

Импликация

^

-

*, /

\

mod

+ , -

& (только для символьных выражений)

=, <>, <, >, <=, >=, Like, Is, IsNot,

Not

And

Or,

Xor,

Eqv,

Imp

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

При необходимости изменения приоритета операции в выражении пользуются скобками.

Операторы Is и IsNot являются операторами сравнения ссылок объектов. Они не выполняют сравнение значений двух объектов; они проверяют только ссылаются ли две переменные объекта на один и тот же экземпляр объекта.

Примеры:

  1. 1. 33 \ 7 * 7 + 33 MOD 7  Последовательность вычисления этого выражения такова: 7*7, результат 49, тип Integer33 \ 49, результат 0, тип Integer33 MOD 7, результат 5, тип Integer0 + 5, результат 5, тип Integer.

  2. (3 > 2 + 3) AND (3 < 2 + 3)  В соответствии с правилами вначале будут выполняться операции в скобках, первыми арифметические операции, а за ними операции сравнения. Общая последовательность действий такова: 2 + 3, результат 5, тип Integer, 3 > 5, результат Ложь(False), тип Boolean; 3 < 5, результат Истина (True), тип BooleanFalse AND True, результат Ложь (False), тип Boolean. Как и следовало ожидать, результат всего выражения Ложь (False), поскольку в нем требовалось одновременное выполнение взаимоисключающих условий. Если логическую операцию AND заменить операцией OR, то все выражение будет иметь значениеИстина (True).

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]