PRIORIDAD DE LOS
OPERADORES
Un asunto que no había mencionado hasta
el momento, es sobre la prioridad de los operadores matemáticos. Observar el
siguiente ejemplo:
promedio = (5 + 6 + 7) / 3
En la variable "promedio"
encerré entre paréntesis toda la suma y fuera de ella, dejé la división. Esto
es así por el asunto de la prioridad de los operadores, al usar paréntesis,
estoy diciendo que primero se debe evaluar toda la operación que se encuentra
dentro de los paréntesis y luego el resultado, dividirlo por 3. De no haber
utilizado el paréntesis, el programa hubiese evaluado primero la división y
posteriormente hubiese hecho la suma, porque la división tiene mayor prioridad
que la suma.
Primero vienen los paréntesis,
posteriormente la potencia, la cual tiene mayor prioridad que todas las demás
operaciones, luego viene la multiplicación y la división que se encuentran en
el mismo nivel y por último, un nivel más abajo se encuentra la suma y resta.
Esto, sería algo así:
1.- Paréntesis
2.- Potencia
3.- Multiplicación y división
4.- Suma y resta
Cuando el programa evalúa operaciones
que están en el mismo nivel, ya sea por ejemplo una suma y una resta, entonces
empieza a realizar las operaciones desde izquierda a derecha.
Mejor un par de ejemplos:
valor
= 10 + 10 – 2
Como son operaciones que se encuentran
en un mismo nivel de prioridad, son evaluadas de izquierda a derecha, dando un
resultado de 18
valor
= 10 + 10 / 2
Aquí la cosa cambia ya que hay
operadores de distinta prioridad. En este caso primero se evalúa la división y
posteriormente la suma, dando un resultado de 15. En casos como este, algunos
principiantes (como yo) se confunden al principio, creyendo que con esa
operación, el resultado sería 10, pensando que se sumaría el 10+10 y luego el
resultado se divide por 2, pero esto no es así debido a la prioridad de los
operadores.
¿Entonces como hago para que el
resultado sea 10?. La respuesta es usando paréntesis. Para que primero se
evalúe la suma y luego la división, el paréntesis debe ser ubicado de la
siguiente forma:
valor
= (10 + 10) / 2
De esta forma, se obtiene un resultado
de 10
Probemos esto en Small Basic, para ver que nos dice.
Escribiré el siguiente programa:
promedio1 = (5 + 6 + 7) / 3 '
Se resuelve el parentesis, luego la division
promedio2 = 5 + 6 + 7 / 3 '
Se resuelve la division, luego la suma
operacion1 = 10 + 10 - 2 '
Se resuelve todo de izquierda a derecha
operacion2 = 10 + 10 / 2 '
Se resuelve la division, luego la suma
operacion3 = (10 + 10) / 2 '
Se resuelve el parentesis, luego la division
TextWindow.WriteLine("Los
resultados son:")
TextWindow.WriteLine("")
TextWindow.WriteLine("1:
"+ promedio1)
TextWindow.WriteLine("2:
"+ promedio2)
TextWindow.WriteLine("3:
"+ operacion1)
TextWindow.WriteLine("4:
"+ operacion2)
TextWindow.WriteLine("5:
"+ operacion3)
Esto es todo por ahora, en el proximo capítulo, se harán algunos ejercicios para comprobar lo aprendido.
Gustavo J. Cerda Nilo
Julio 2015, última modificación Marzo 2016
Julio 2015, última modificación Marzo 2016
No hay comentarios:
Publicar un comentario