Precedencia de Operadores

Post on 01-Feb-2016

216 views 0 download

description

INFORMATICA

Transcript of Precedencia de Operadores

División de Informática Academia de Programación

Curso Propedéutico 1

AP07 – Precedencia de Operadores

La precedencia de operadores es un conjunto de normas que controlan el orden en el que se realizan las operaciones al evaluar una expresión. Las operaciones con mayor precedencia se realizan antes que las de menor prioridad. Por ejemplo, la multiplicación se realiza antes que la suma.

La tabla siguiente muestra una lista de los operadores, en orden de precedencia de mayor a menor. Los operadores con la misma precedencia se evalúan de izquierda a derecha.

Operador Descripción

. [] () Acceso a campos, indización de matrices, llamadas a funciones y agrupamiento de expresiones

++ -- - ~ ! delete new typeof void Operadores unarios, tipos de datos devueltos, creación de objetos, valores no definidos

* / % Multiplicación, división, división módulo

+ - + Suma, resta, concatenación de cadenas

<< >> >>> Desplazamiento de bits

< <= > >= instanceof Menor que, menor que o igual a, mayor que, mayor que o igual a, instanceof

== != === !== Igualdad, desigualdad, igualdad estricta y desigualdad estricta

& AND de bits

^ XOR de bits

| OR de bits

&& AND lógico

|| OR lógico

?: Condicional

= OP= Asignación, asignación con operación

, Evaluación múltiple

Los paréntesis se usan para modificar el orden de evaluación determinado por la precedencia de operador. Esto significa que una expresión encerrada entre paréntesis se evalúa por completo antes de usar su valor en el resto de la expresión.

Por ejemplo:

z = 78 * (96 + 3 + 45)

En esta expresión hay cinco operadores: =, *, ( ), + y otro +. Según las normas de precedencia de operadores, se evalúan en el siguiente orden: ( ), +, +, *, =. En primer lugar se realiza la evaluación de la expresión que está encerrada entre paréntesis. Dentro de los paréntesis hay dos operadores de suma. Puesto que ambos operadores de suma tienen la misma precedencia, se evalúan de izquierda a derecha. Primero se suma 96 y 3 y, después, se suma 45 al total resultante, dando como resultado un valor igual a 144.

A continuación se realiza la multiplicación. Se multiplica 78 por 144, dando como resultado un valor igual a 11232. Por último se realiza la asignación. Se asigna 11232 a z.

División de Informática Academia de Programación

Curso Propedéutico 2

Ejemplo 1:

int suma1;

suma1 = 45 / 5 + 12 * 2 - 35;

9 + 24 - 35

33 - 35

-2suma1 = -2;

Ejemplo 2:

int suma2;

int suma2;

suma2 = 45 / 5 + ( 12 * (2 - 35) ) ;

9 + ( 12 * -33 )

9 + -396

-387suma2 = -387;

Ejercicios: int suma3 suma3 = (45 / 5 + 12) * 2 – 35; suma3 = ? int suma4; suma4 = 45 / (5 + 12) * (2 - 35); suma4 = ? float suma5; suma5 = (45.0 / (5.0 + 12.0)) * (2.0 – 35.0);