Operaciones aritméticas y expresiones

Operaciones Aritméticas
Operaciones básicas
Operadores DIV y MOD (Enteros)
Prioridad de operadores
Constantes variables
Uso de las constantes variables
Constantes expresiones
Uso de las expresiones como constantes

Operaciones básicas

Las operaciones básicas en Turbo Pascal están formadas por dos partes: el operador y los operandos.

Un operador es el símbolo que le indica al programa que operación realizará y los operandos son los datos sobre los cuales se efectuará la operación.

Los operadores de Turbo Pascal son:

Operador Operación
+ Suma
- Resta
* Multiplicación
/ División

El tipo de datos que pascal regresa como resultado de una operación dependerá del tipo de datos usados como operandos. Por ejemplo, la suma de dos enteros da como resultado otro entero, y la suma de dos números reales da como resultado otro número real.

Operadores DIV y MOD

La división de dos números, sin importar su tipo, dará como resultado un número real, así que para dividir dos enteros, y obtener el resultado como entero, Turbo Pascal ofrece el operador DIV, el cual da el resultado entero de una división entre enteros, y el operador MOD que regresa el residuo de una división de enteros.

Su sintaxis es:

entero := dividendo DIV divisor

entero := dividendo MOD divisor

El siguiente programa es un ejemplo del uso de los operadores aritméticos:

PROGRAM Operaciones_Básicas;
VAR
Suma, Resta, Multiplicacion, Division : Real;
Cociente_Entero, Residuo_Entero : Integer;

BEGIN
Suma := 12 + 8;
Resta := 12 - 8;
Multiplicacion := 12 * 8;
Division := 12/8;
Cociente_Entero := 12 DIV 8;
Residuo_Entero := 12 MOD 8;
WriteLn ('La suma de 12 + 8 es igual a: ',Suma);
WriteLn ('La resta de 12 - 8 es igual a: ',Resta);
WriteLn ('La multiplicación de 12 * 8 es igual a: ',Multiplicacion);
WriteLn ('La división de 12 / 8 es igual a: ',Division);
WriteLn ('La división entera de 12 / 8 es igual a: ',Cociente_Entero);
WriteLn ('El residuo de la división entera de 12 / 8 es: ',Residuo_Entero);
END.

Prioridad de operadores

Cuando se utilizan en alguna expresión mas de un operador, éstos se evaluan conforme a una prioridad establecida por Turbo Pascal. Es necesario conocer el orden de evaluación para evitar errores en nuestros programas.

El orden en que se ejecutan las operaciones es el siguiente:

*, /, DIV, MOD primeros en evaluarse, todos tienen igual prioridad.
+, - últimos en evaluarse, ambos tienen igual prioridad.

En caso de existir parentesis en la expresión se evaluará primero el contenido de los parentesis antes que otros operadores.

Si existen dos operadores de igual prioridad se evaluará de izquierda a derecha.

Para observar la importancia de la evaluación correcta de los operadores se expone el siguiente ejemplo:

PROGRAM Operadores;
VAR
Resultado_Uno, Resultado_Dos : Real;
BEGIN
Resultado_Uno := 3 + 5 * 7;
Resultado_Dos := (3 + 5) * 7;
WriteLn ('El resultado de la operación 3 + 5 * 7 es: ',Resultado_Uno);
WriteLn ('El resultado de la operación (3 + 5) * 7 es: ',Resultado_Dos);
END.

Como se podrá observar en la primera operación se ejecutará primero la operación 5*7 y al resultado se le sumarán 3,en cambio,en la segunda operación se realizará primero la suma 3+5 para multiplicarle al resultado 7.

Uso de las constantes variables

Cuando se declaran las variables en Turbo Pascal no se inicializan con algún valor en especial, ésto quiere decir que una variable que no ha sido igualada a cierto valor llevará un contenido imprevisible, cosa no deseable en la mayoría de los programas, para evitar resultados indeseables es posible asignarle a cada variable un valor "por defecto", que se guarde al iniciar el programa.

Estas variables inicializadas son llamadas constantes variables, ya que se declaran en la sección de constantes, pero es posible cambiar su valor.

La sintaxis para su declaración es la siguiente:

Identificador : tipo_de_datos = valor;

Ejemplo:

PROGRAM Constantes_Variables;

CONST
Valor_Inicializado : Integer = 23;
Texto_Inicializado : String = 'Buenos Dias!';

VAR
Texto : String;
Entero : Integer;

BEGIN
WriteLn ('Cadena inicializada: ',Texto_Inicializado);
WriteLn ('Cadena sin inicializar: ',Texto);
WriteLn ('Entero inicializado: ',Valor_Inicializado);
WriteLn ('Entero sin inicializar: ',Entero);
END.

Uso de las expresiones como constantes

Es posible declarar constantes con base en otras constantes ya declaradas en el programa utilizando alguna expresión para este fin, por ejemplo:

CONST
Columnas = 80;
Filas = 24;
Total_de_espacios = Columnas * Filas;

Solo es posible utilizar constantes en las expresiones de este tipo, si se usa alguna variable ocurrirá un error al momento de compilar el programa.