CONSTANTE Y VARIABLE

CONSTANTE Y VARIABLE 

Constantes


def: Una constante es un dato cuyo valor no puede cambiar durante la ejecución del programa. Recibe un valor en el momento de la compilación y este permanece inalterado durante todo el programa.

Como ya se ha comentado en el tema sobre las partes de un programa, las constantes se declaran en una sección que comienza con la palabra reservada const. Después de declarar una constante ya puedes usarla en el cuerpo principal del programa. Tienen varios usos: ser miembro en una expresion, en una comparación, asignar su valor a una variable, etc.
En el siguiente ejemplo se contemplan varios casos: 
   
  const
    Min = 0;
    Max = 100;
    Sep = 10; 
  var  
    i : integer;

  begin
    i := Min;
    while i < Max do begin
      writeln(i);
      i := i + Sep
    end
  end.
      
En este ejemplo se declaran tres constantes (Min, Max y Sep). En la primera línea del cuerpo del programa se asigna una constante a una variable. En la siguiente, se usa una constante en una comparación. Y en la cuarta, la constante Sep interviene en una expresión que se asigna a una variable. El resultado de ejecutar este programa sería una impresión en pantalla de los números: 0, 10, 20, 30, 40, 50, 60, 70, 80 y 90.

Se puede hacer una división de las constantes en tres clases:

Constantes literalesSon valores de cualquier tipo que se utilizan directamente, no se declaran ya que no tienen nombre. En el siguiente ejemplo tienes un par de constantes literales (el 3, el 4, y el 3.1416):
VolumenEsfera := 4/3 * 3.1416 * Radio * Radio * Radio;
Constantes declaradasTambién llamadas constantes con nombre, son las que se declaran en la sección const asignándoles un valor directamente. Por ejemplo:
const
Pi = 3.141592; (* valor real *)
Min = 0; (* entero *)
Max = 99; (* entero *)
Saludo = 'Hola'; (* cadena caract. *)
Constantes expresiónTambién se declaran en la sección const, pero a estas no se les asigna un valor directamente, sino que se les asigna una expresión. Esta expresión se evalúa en tiempo de compilación y el resultado se le asigna a la constante. Ejemplo:
const
Min = 0;
Max = 100;
Intervalo = 10;
N = (Max - Min) div Intervalo;
Centro = (Max - Min) div 2;

Volver al inicio de la página
Pasar al siguiente apartado sobre variables
Pasar a la comparación de constantes y variables











Variables


def: Una variable es un nombre asociado a un elemento de datos que está situado en posiciones contiguas de la memoria principal, y su valor puede cambiar durante la ejecución de un programa.

Toda variable pertenece a un tipo de dato concreto. En la declaración de una variable se debe indicar el tipo al que pertenece. Así tendremos variables enteras, reales, booleanas, etc. Por otro lado, distinguimos tres partes fundamentales en la vida de una variable:

Declaración de variablesEsta es la primera fase en la vida de cualquier variable. La declaración se realiza en la sección que comienza con la palabra var. Si quieres más información, puedes ir al apartado que trata sobre la declaración de variables en el tema Estructura de un programa.
Nota: Toda variable que vaya a ser utilizada en Pascal tiene que ser previamente declarada.

Iniciación de variablesEsto no es más que darle un valor inicial a una variable. Así como lo primero que se hace con una variable es declararla, lo siguiente tiene que ser iniciarla. Esto se hace para evitar posibles errores en tiempo de ejecución, pues una variable tiene un valor indeterminado después de declararla. Principalmente, existen dos maneras de otorgar valores iniciales a variables:
  • Mediante una sentencia de asignación
  • Mediante uno de los procedimientos de entrada de datos (read o readln)

Veamos un ejemplo que reúne los dos casos:

   begin
      ...
     i:=1;
     readln(n);
     while i < n do begin
        (* cuerpo del bucle *)
        i := i + 1
     end;
      ...
   end.
         

Utilización de variables
Una vez declarada e iniciada una variable, es el momento de utilizarla. Esta es la parte que presenta un mayor abanico de posibilidades. A continuación tienes unas cuantas:
  • Incrementar su valor:
    i := i + 1
  • Controlar un bucle:
    for i:=1 to 10 do ...
  • Chequear una condición:
    if i<10 then ...
  • Participar en una expresión:
    n := (Max - Min) div i
  • Y otras que ya irás descubriendo


Volver al inicio de la página
Volver al anterior apartado sobre constantes
Pasar al siguiente apartado que compara constantes y variables











Diferencias entre ambas

Después de haber visto cada una por separado, pasemos a explicar las diferencias que existen entre constantes y variables. A primera vista pudieran parecer conceptos similares, pero realmente son cosas muy distintas. Y esta distinción viene dada por la posibilidad que tienen las variables para cambiar de valor.
Principales diferencias:
  • Las constantes ya reciben un valor inicial en su declaración
  • Las variables primero se declaran, luego se inician, y luego se usan
  • Las constantes, una vez declaradas mantienen su valor durante toda la ejecución del programa
  • En cambio, las variables pueden cambiar su valor tantas veces como deseen
  • Además de cambiar su valor, las variables también pueden cambiar de tamaño en tiempo de ejecución (punteros)
Nota: En el último punto se alude a las variables que cambian su tamaño. Como curiosidad saber que se denominan variables dinámicas o punteros, pero debido a su complejidad no son objeto de este tutorial. Todas las demás variables son estáticas y se tratarán las más significativas.

Ejemplo
A continuación tienes un ejemplo con el que puedes interactuar para que repases algunos de los conceptos que se han tratado en este tema. En él puedes observar cómo se encuentran los valores de dos variables y una constante en varios puntos del programa.

Nota: Debido a la última sentencia, el ejemplo no compilaría. Pero se incluye para que veas que no puedes cambiar el valor de una constante.

Comentarios

Entradas populares de este blog

CICLOS DE PROGRAMACIÓN

TOMA DE DESICION PROGRAMACIÓN