Main Content

Precedencia de operadores

Puede crear expresiones que utilicen cualquier combinación de operadores aritméticos, relacionales y lógicos. Los niveles de precedencia determinan el orden en que MATLAB® evalúa una expresión. En cada nivel de precedencia, los operadores tienen la misma precedencia y se evalúan de izquierda a derecha. Las reglas de precedencia para los operadores de MATLAB se muestran en esta lista, ordenadas desde el nivel de precedencia superior al nivel inferior:

  1. Paréntesis ()

  2. Trasposición (.'), potencia (.^), trasposición conjugada compleja ('), potencia de matriz (^)

  3. Potencia con menos unario (.^-), más unario (.^+) o negación lógica (.^~) además de una potencia de matriz con menos unario (^-), más unario (^+) o negación lógica (^~).

    Nota

    Aunque la mayoría de los operadores actúa de izquierda a derecha, los operadores (^-), (.^-), (^+), (.^+), (^~) y (.^~) actúan desde el segundo de derecha a izquierda. Se recomienda que utilice paréntesis para especificar de manera explícita la precedencia deseada de las instrucciones que contengan estas combinaciones de operadores.

  4. Más unario (+), menos unario (-), negación lógica (~)

  5. Multiplicación (.*), división derecha (./), división izquierda (.\), multiplicación de matrices (*), división derecha de matrices (/), división izquierda de matrices (\)

  6. Adición (+), sustracción (-)

  7. Operador de dos puntos (:)

  8. Menor que (<), menor que o igual a (<=), mayor que (>), mayor que o igual a (>=), igual a (==), no es igual a (~=)

  9. AND elemento por elemento (&)

  10. OR elemento por elemento (|)

  11. AND con cortocircuito (&&)

  12. OR con cortocircuito (||)

Precedencia de los operadores AND y OR

MATLAB siempre otorga precedencia al operador & sobre el operador |. Aunque MATLAB habitualmente evalúa las expresiones de izquierda a derecha, la expresión a|b&c se evalúa como a|(b&c). Es recomendable utilizar paréntesis para especificar de manera explícita la precedencia prevista de las instrucciones que contengan combinaciones de & y |.

La misma regla de precedencia se mantiene en vigor para los operadores && y ||.

Anulación de la precedencia predeterminada

La precedencia predeterminada se puede anular con los paréntesis, como se muestra en este ejemplo:

A = [3 9 5];
B = [2 1 5];
C = A./B.^2
C =
    0.7500    9.0000    0.2000

C = (A./B).^2
C =
    2.2500   81.0000    1.0000

Temas relacionados