programación

Algoritmo: conceptos y definiciones

Un algoritmo se define como una descripción no ambigua y precisa de las acciones que hay que realizar para resolver un problema bien definido en un tiempo finito. Un algoritmo es un conjunto ordenado y finito de operaciones que permite hallar la solución de un problema.

Para comprender el concepto de algoritmo, es preciso definir los conceptos de entorno, acción, proceso y procesador.

  • Entorno: es el conjunto de objetos necesarios para llevar a cabo una tarea determinada. El estado del entorno es un momento determinado en la descripción del estado de los objetos del entorno en aquel momento concreto. Un algoritmo actúa de manera que hace cambiar progresivamente el estado de su entorno.
  • Acción: es un suceso finito en el tiempo y que tiene un efecto definido y previsto. Una acción puede actuar sobre un entorno y lo puede modificar, es decir, se parte de un estado inicial y se llega a un estado final diferente.
  • Proceso: es la ejecución de una o varias acciones. El algoritmo expresa unas pautas que hay que seguir para llevar a cabo una tarea concreta. El encargado de llevar a cabo el proceso es el procesador.
  • Procesador: es una entidad capaz de comprender y ejecutar eficazmente un algoritmo. El destinatario del algoritmo es el procesador.

La computadora procesará nuestros algoritmos, pero para hacerlo es necesario que entienda nuestras lenguaje algorítmico. Es preciso, por lo tanto, transcribir nuestros algoritmos a un lenguaje de programación, es decir, a un lenguaje capaz de ser comprendido por la computadora. Así pues, un programa es sólo la codificación de un algoritmo en un lenguaje que la computadora entienda.

Lo realmente importante es, entonces, llegar a saber diseñar un algoritmo que resuelva un problema determinado. El hecho de codificarlo para obtener un programa consiste simplemente es realizar una traducción.

programación

¿Qué es un algoritmo?

En el ámbito de las tecnologías de la información y la comunicación (TICs) una de las tareas más importantes es el desarrollo de programas de computación. Podemos definir al algoritmo como un procedimiento de cálculo que consiste en seguir un conjunto ordenado y finito de instrucciones que conduce a la solución de un problema. El lenguaje algorítmico se trata de un lenguaje rígido con pocas instrucciones que sirven para expresar lo que queremos que la computadora haga.

Por lo tanto, podemos pensar en un algoritmo como una receta o guión que hay que seguir para resolver un problema determinado, normalmente a partir de una información que tenemos de entrada.

Un algoritmo nos indica las acciones que hay que seguir para resolver un problema concreto, pero necesitamos un autómata (procesador) que sea capaz de ejecutarlo en un entorno afectado. Un programa de computación es sólo la codificación de un algoritmo en un lenguaje que la computadora entiende.

Podríamos pensar en una lavadora como un autómata; es una máquina capaz de realizar una tarea de manera autómata, en este caso, lavar la ropa.

Si le pedimos a la lavadora que lave la ropa, la lavadora seguirá el siguiente proceso:

  • utilizar agua y jabón del cajón.
  • calentar el agua a 40 grados.
  • dar vueltas durante 20 minutos. Es decir, lavar.
  • expulsar el agua.
  • incorporar más agua.
  • dar vueltas durante 10 minutos.
  • dar vueltas durante 10 minutos (aclarado).
  • expulsar el agua.
  • centrifugar

Podríamos considerar, por lo tanto, que todo este conjunto de acciones que la lavadora ha llevado a cabo, es el algoritmo diseñado para lavar la ropa.