Поделиться через


Эффективное сочетание операторов (Visual Basic)

Сложные выражения могут содержать большое количество различных операторов. Это показано в приведенном ниже примере.

x = (45 * (y + z)) ^ (2 / 85) * 5 + z

Создание сложных выражений, таких как в предыдущем примере, требует глубокого понимания правил приоритета операторов. Дополнительные сведения см. в разделе Порядок применения операторов в Visual Basic.

Выражения в скобках

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

x = z * y + 4

В этом примере z умножается на y, а затем к результату добавляется 4. Однако если требуется сложить y и 4 перед умножением на z, можно переопределить очередность выполнения с помощью скобок. Если выражение заключено в скобки, оно вычисляется в первую очередь независимо от приоритета операторов. Чтобы в предыдущем примере сначала выполнить сложение, нужно переписать его следующим образом:

x = z * (y + 4)

В этом примере y складывается с 4, а затем сумма умножается на z.

Вложенные выражения в скобках

Для дальнейшего переопределения приоритетов можно окружать выражения скобками разных уровней. Выражения, наиболее глубоко вложенные в скобки, вычисляются первыми, далее — следующие наиболее глубоко вложенные и т.д., и в заключение вычисляются выражения за пределами скобок. Это показано в приведенном ниже примере.

x = (z * 4) ^ (y * (z + 2))

В указанном выше примере выражение z + 2 вычисляется раньше, чем другие выражения в скобках. Возведение в степень, обычно имеющее более высокий приоритет по сравнению со сложением и умножением, вычисляется в этом примере в последнюю очередь, поскольку другие выражения заключены в скобки.

См. также

Задачи

Практическое руководство. Вычисление числовых значений (Visual Basic)

Ссылки

Логические (побитовые) операторы (Visual Basic)

Порядок применения операторов в Visual Basic

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

Арифметические операторы в Visual Basic

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

Логические и побитовые операторы в Visual Basic

Логические выражения (Visual Basic)

Сравнение значений (Visual Basic)