jueves, 12 de julio de 2012

Variables

Las variables son la piedra angular de un algoritmo. Los algoritmos básicamente procesan datos para obtener más datos, y esos datos tienen que guardarse en variables.

Para clarificar, supongamos que me piden un algoritmo que sume dos números. Podría escribir el siguiente algoritmo:


Este algoritmo sin duda funciona, pero sirve sólo para los números que se incluyeron como valores literales en él.

El programador podría responder a la observación anterior diciendo que puede cambiar los números en cualquier momento, y tiene toda la razón, pero la idea de los algoritmos y programas es que funcionen sin necesidad que el programador esté al lado modificándolos.

Visto lo anterior debemos modificar el algoritmo para que sume dos números cualesquiera, particularmente dos números que el usuario ingrese. Esto implica el uso de la instrucción Leer, y por lo tanto el uso de variables.



Lo que está bien: hay 2 Leer ya que son 2 números a sumar.

Lo que está mal: ambos números se leen en la misma variable.

Una variable estándar sólo permite guardar un dato, así que al guardar el dato léido la segunda vez se pierde el que se leyó primero.


La suma correcta es 111, pero el resultado es 98, o sea 49 + 49. El 62 se leyó y guardó, pero al leer y guardar el 49 en la misma variable el 62 se pierde y sólo queda el 49.

Hay más de una solución. La más obvia es usar dos variables en vez de una:



Nótese que cada variable que se usa:
  • Debe tener un identificador único
  • Debe declararse antes de usarse
  • Debe definirse del tipo correcto
Otra solución es sumar a medida que se lee:



Como sea cualquier solución va a implicar usar más variables.

Las variables usan memoria RAM, pero los computadores modernos tienen bastante RAM como para que el crear más variables no sea una preocupación por ese motivo. Una variable de tipo Entero usa 4 Bytes de RAM. Un computador con 2 GB de RAM tiene 2.147.483.648 Bytes, así que puedes apreciar la diferencia.

No obstante siempre el programador profesional cuida la cantidad de variables, ya que afectan la claridad y el rendimiento del algoritmo. No es el caso de nuestro algoritmo que es muy básico y pequeño.

En este caso el algoritmo ideal sería el siguiente:



No hay comentarios:

Publicar un comentario