Sentencias de Asignación y Lectura
Sentencias de Asignación
La asignación es una de las sentencias más importantes en Pascal, ya que permite situar un valor que es el resultado de la evaluación de una expresión en una posición de memoria referenciada por una variable. El operador de asignación es := y el formato es el siguiente:
Variable:=expresión;
La variable es un identificador que ha sido declarada con anterioridad en el programa y la expresión puede ser una constante.
REGLAS DE LAS SENTENCIAS DE ASIGNACION
1. Una variable al lado derecho de la sentencia de asignación debe de tener un valor antes de que la sentencia se ejecute. Hasta que un programa le dé un valor a una variable, esa variable no tiene valor.
Ejemplo:
C = A + 1 Si la variable A no tiene valor antes de ejecutarse la expresión, se producirá un error lógico.
2. En la izquierda de una sentencia de asignación solo pueden existir identificadores. Por consiguiente no es válido lo siguiente:
Sueldo - Descuentos = 425
5 = B
Ejemplos válidos:
A = 10
Pi = 3.1416
NSueldo = Sueldo + aumento
3. La operación de asignación es destructiva debido a que el valor almacenado en una variable se pierde o se destruye y se sustituye por el nuevo valor de la sentencia de asignación.
4. Es posible utilizar el mismo nombre de identificador en ambos lados del ooperador de asignación.
Ejemplo:
N = 2
N = N + 2
Sentencias de Lectura
Hay una entrada de teclado con los procedimientos Read y ReadLn.
Los procedimientos ReadLn y Read aceptan un valor escrito en el teclado:
ReadLn(NombreVariable);
Read(NomVariable);
Este procedimiento espera a que el usuario introduzca el dato, después asigna su valor a la variable especificada (NomVariable). La entrada del usuario debe corresponder en tipo de datos con la variable indicada en ReadLn.
La diferencia entre Read y ReadLn se advierte cuando en el programa se leen más valores que los requeridos. Por ejemplo si el programa llama a Read(x, y, z); y en el momento se introducen los valores 1, 2, 3, 4, entonces Read asigna a la variable x el valor de 1, a y el valor de 2 y a la variable z el valor de 3. La sentencia Read no utiliza el valor 4, en su lugar lo almacena en una zona denominada memoria intermedia (buffer). Así que la siguiente ocasión que el programa utilice Read o ReadLn se asignará el valor 4 ya que está en la memoria intermedia como entrada.