1.2-EVALUACIÓN DE EXPRESIONES
¿QUE SON LAS EXPRESIONES?
·
Son el método fundamental que tiene el programador
de expresar computaciones.
·
Las expresiones están compuestas de operadores,
operandos, paréntesis y llamadas a funciones. Los operadores pueden ser:
·
Unarios: Cuando tan solo tienen un operando. Son
operadores prefijos.
·
Binarios: 2 Operandos. Son operadores infijos.
·
Ternarios: 3 operandos.
ORDEN DE LA EVALUACIÓN DE LOS OPERADORES.
·
El orden en que se evalúan los operandos viene dado
por unas reglas:
·
Reglas de procedencia
·
Reglas de asociatividad
·
Uso de paréntesis
EVALUACIÓN DE EXPRESIONES
Toda expresión regresa un valor. Si hay más de un
operador, se evalúan primero operadores mayor precedencia, en caso de empate,
se aplica regla asociatividad
Para evaluar una expresión no hay que hacer nada
del otro mundo, pues es bien sencillo. Sólo hay que saber sumar, restar, si un
número es mayor que otro
Hay tres reglas de prioridad a seguir para evaluar
una expresión:
·
Primero, los paréntesis (si tiene)
·
Después, seguir el orden de prioridad de operadores
·
Por último, si aparecen dos o más operadores
iguales, se evalúan de izquierda a derecha.
Las expresiones son secuencias de constantes y/o
variables separadas por operadores válidos.
Se puede construir una expresión válida por medio
de :
1. Una sola constante o variable, la cual puede
estar precedida por un signo + ó – .
2. Una secuencia de términos (constantes,
variables, funciones) separados por operadores.
Además debe considerarse que:
Toda variable utilizada en una expresión debe tener
un valor almacenado para que la expresión, al ser evaluada, dé como resultado
un valor.
Cualquier constante o variable puede ser
reemplazada por una llamada a una función.
Como en las expresiones matemáticas, una expresión
en Pascal se evalúa de acuerdo a la precedencia de operadores
JERARQUÍA DE OPERADORES
El orden general de evaluación de los operadores de
una expresión va de izquierda a derecha, con la excepción de las asignaciones
que lo hacen de derecha a izquierda.
Podemos seguir las siguientes tres reglas de
evaluación de expresiones:
(Regla 1) En todas las expresiones se evalúan
primero las expresiones de los paréntesis más anidados (interiores unos a
otros); y éstos modifican la prioridad según la cantidad de éstos, los cuales
tienen que estar balanceados (el mismo número de paréntesis que abren debe ser
igual al número de los paréntesis que cierran).
(Regla 2) Todas las expresiones se evalúan tomando
en cuenta la jerarquía de los operadores.
(Regla 3) Todas las expresiones se evalúan de
izquierda a derecha.
¿QUÉ HACEN LOS LENGUAJES DE PROGRAMACIÓN AL
RESPECTO?
C permite evaluación de circuito corto con los
operadores booleanos.
PASCAL no permite evaluación de circuito corto. No
se pueden usar sentencias del siguiente tipo:
A:array[1..10] of integer;
If (i<=10) and (a[i]>0) then
Porque se accede a una posición no válida de un
array.
ADA: “and”, “or” no son operaciones de circuito corto
y “or them” y “and them” si son operaciones de circuito corto.
If (i<=10) and them (a[i]>0) them
Tabla de evaluación de C++
Tabla de evaluación de Java
Como contenido auxiliar les dejamos este vídeo
sobre el mismo tema
No hay comentarios:
Publicar un comentario