Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Operadores Aritméticos
Pregunta problematizadora
¿Cuáles son los operadores aritméticos que se utilizan en PSeInt?
Ejercicio 2.5: Escribir un programa que permita presentar el uso de los operadores
aritméticos binarios con los tipos de datos flotantes de PSeInt.
7 72 7 7 13 23 23 8 7
= = = =2
2 13 13 70 8 7 2 8
Ejercicio 2.6: Escribir un programa que permita probar el uso de las seis expresiones
aritméticas compuestas, con dos números reales leídos desde el teclado.
Programa 2.6: Pseudocódigo del programa.
// Algoritmo que permite probar las expresiones compuestas. Algoritmo
ExpresionesCompuestas
// Declaración de variables.
Definir x Como Real
Definir z Como Real
Definir a Como Real
Definir b Como Real
Definir c Como Real
Definir d Como Real
Definir e Como Real
Definir f Como Real
La prueba de escritorio es una técnica que permite controlar el flujo de los datos y ver los
valores que van tomando las variables de un programa en el momento de la ejecución del
mismo. En la Tabla 2.3 que forma parte del Programa 2.6 se presenta una prueba de
escritorio manual donde en la primera columna está cada uno de los pasos que se cumplen
desde el inicio del programa hasta la finalización del mismo y en las otras columnas los
valores que van tomando cada una de las variables en cada uno de los pasos del programa.
Nº Paso x z a b c d e f
1 5
2 7
3 5
4 5
5 5
6 5
7 5
8 5
9 5+7=12
10 5-7=-2
11 5*7=35
12 5/7=0.71
13 5%7=5
14 5^7=78125
x <- 7 + 2 * 6 / 3 - 1;
En este punto surge una pregunta: ¿En qué orden el compilador ejecuta las varias
operaciones aritméticas? En el lenguaje de pseudocódigos PSeInt cada operador tiene
definida un nivel de precedencia, y los operadores son evaluados en un orden de mayor
precedencia a menor precedencia. Las operaciones de multiplicación, división, módulo y
potenciación tienen el mismo nivel de precedencia. De manera similar la operación de
suma y de resta, tienen el mismo nivel de precedencia. Por lo tanto, las operaciones de
multiplicación, división, módulo y potenciación tienen mayor precedencia que la suma y
la resta, lo que implica que las operaciones de multiplicación, división, módulo y
potenciación siempre ocurrirán antes que la suma y la resta (Deitel, H., Deitel, P., 2003).
Entonces, la expresión anterior será evaluada de la siguiente forma:
x <- 7 + 2 * 6 / 3 - 1;
<- 7 + 12 / 3 - 1;
<- 7 + 4 - 1;
<- 11 - 1;
<- 10;
Nótese que los operadores con el mismo nivel de precedencia son evaluados de izquierda
a derecha.
Algunas veces se requiere forzar a que una operación ocurra primero. Por ejemplo, en la
expresión anterior, se pudo haber querido que la suma entre 7 y 2 y la resta entre 3 y 1 se
realice primero. Así como está la expresión, no se puede cumplir con este caso, pero si
encerramos entre paréntesis las expresiones que queremos que se evalúen primero, el
problema está resuelto. Entonces se puede forzar la evaluación de operadores de menor
precedencia como la suma y la resta sobre operadores de mayor precedencia como la
multiplicación, la división, el módulo y la potenciación, utilizando paréntesis. Así
entonces, tenemos reformulada la expresión matemática anterior, de la siguiente manera:
x <- (7 + 2) * 6 / (3 - 1);
<- 9 * 6 / 2;
<- 54 / 2;
<- 27;
Los paréntesis también pueden estar anidados en una expresión matemática, donde usted
puede especificar el grupo de expresiones que quiere que se evalúe primero, luego las que
van en segundo lugar y después las que van en tercer lugar, etc. En una expresión con
paréntesis anidados, las operaciones son evaluadas en cierto orden, desde el grupo de
paréntesis más interno hasta el grupo de paréntesis más externo. El siguiente ejemplo
muestra lo indicado:
Tip de Programación: Observe que los operadores aritméticos se utilizan para evaluar
un valor numérico, que se conoce como expresión numérica. Generalizando, algo que
evalúa a algo más se considera una expresión. En la siguiente sección veremos que
también existen expresiones lógicas (expresiones con operadores lógicos), las cuales
evalúan valores de veracidad o falsedad.