Combinación eficaz de operadores

Actualización: noviembre 2007

Las expresiones complejas pueden contener muchos operadores diferentes. Esto se ilustra en el siguiente ejemplo:

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

La creación de expresiones complejas como la del ejemplo anterior requiere comprender a fondo las reglas de prioridad de operador. Para obtener más información, vea Prioridad de operador en Visual Basic.

Expresiones entre paréntesis

A menudo, desea que las operaciones se realicen en un orden diferente del que determina la prioridad de operador. Considere el ejemplo siguiente.

x = z * y + 4

El ejemplo anterior multiplica z por y y suma el resultado a 4. Si desea sumar y y 4 antes de multiplicar el resultado por z, puede anular la prioridad de operadores normal utilizando paréntesis. Si escribe una expresión entre paréntesis, fuerza a que dicha expresión se evalúe primero, independientemente de la prioridad de operador. Para indicar que en el ejemplo anterior se lleve a cabo la suma en primer lugar, podría reescribirlo como en el ejemplo siguiente.

x = z * (y + 4)

El ejemplo anterior suma y y 4 y, a continuación, multiplica esa suma por z.

Expresiones entre paréntesis anidadas

Puede anidar expresiones en varios niveles de paréntesis para anular todavía más la prioridad. La expresión en el último nivel de anidación entre paréntesis se evalúa en primer lugar, después la siguiente expresión más anidada y así sucesivamente hasta el último nivel de anidación; por último, se evalúan las expresiones situadas fuera de los paréntesis. Esto se ilustra en el siguiente ejemplo:

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

En el ejemplo anterior, se evalúa z + 2 en primer lugar y, a continuación, las otras expresiones entre paréntesis. La exponenciación, que generalmente tiene mayor prioridad que la suma o la multiplicación, se evalúa en último lugar debido a que las demás expresiones están escritas entre paréntesis.

Vea también

Tareas

Cómo: Calcular valores numéricos

Conceptos

Operadores aritméticos en Visual Basic

Operadores de comparación en Visual Basic

Operadores lógicos y bit a bit en Visual Basic

Expresiones booleanas

Comparaciones de valores

Referencia

Operadores lógicos y operadores bit a bit

Prioridad de operador en Visual Basic