¿Qué es un algoritmo y qué es un programa?
|
Diagramas de flujo
Es una descripción gráfica de un algoritmo utilizando distintas figuras y flechas que las unen. Convenientes para algoritmos simples ya que cuando crecen se convierten en un “diagrama espagueti" difícil de seguir. En la actualidad son poco utilizados.
Pseudocódigo
La idea es una forma intermedia entre usar lenguaje natural y un lenguaje de programación. No posee una forma estricta pero normalmente se respeta:
- Se usa el concepto de variable y asignación. Ej: “a <- 5” significa que a la variable a le asignó la constante 5.
- Se indican los datos de entrada y de salida
- Se utilizan instrucciones condicionales del tipo: “si <condición> entonces <instrucciones> sino <instrucciones>
- Se utilizan instrucciones de ciclo como “repetir hasta que ...”
Algoritmo para definir si un triángulo es escaleno, isósceles o equilatero Datos de entrada: lado1, lado2, lado3 Datos de salida: tipo si lado1 = lado2 y lado1 = lado3 entonces tipo <- equilatero sino si (lado1 = lado2) o (lado1 = lado3) o (lado2 = lado3) entonces tipo <- isósceles sino tipo <- escaleno
¿Qué es un programa?
Un programa está asociado intrínsecamente a la existencia de una computadora. Las computadoras ejecutan programas. Los programas leen datos desde archivos, bases de datos, redes, teclados, etc y escriben datos en archivos, bases de datos, redes, pantallas, etc.
Los programas son ejecutados por el procesador de la computadora. Para ello tienen que ser cargados en la memoria principal RAM. La carga de los programas en la memoria esta a cargo de un tipo especial de programa o software llamado sistema operativo.
Diferencia entre algoritmo y programa
Aunque pueden confundirse, por ejemplo los dos son un conjunto de instrucciones, representan dos conceptos muy distintos. Un algoritmo es más parecido a una idea, una forma de resolver un problema, mientras que un programa está más ligado a la realización de una o más tareas por una computadora.
Un programa puede implementar uno o varios algoritmos, o puede ser tan simple que la idea de algoritmo es poco aplicable. La tarea de un programador suele empezar diseñando algoritmos para resolver los problemas planteados y luego implementarlos e incluirlos en un programa.
Cuando hablamos de programa siempre existe la idea de que será ejecutado por una computadora mientras que un algoritmo podría ser ejecutado por una persona.
Un programa está escrito en lenguaje máquina o por lo menos en un lenguaje que pueda ser compilado o interpretado por algún tipo de máquina (a veces una máquina virtual).
<< Computadora u Ordenador |