Algoritmo

Un algoritmo es un conjunto ordenado de pasos a seguir (instrucciones concretas) que llevan a resolver un determinado problema. Ha de cumplir con las siguientes condiciones:

     
  • Ser correcto (Resuelve el problema)

  • Ser finito (Conduce a la solución en un tiempo dado)

  • Ser flexible  (No es exclusivo para un tipo de problema sino que sirve como método general para distintos datos)

  • Ser claro (comprensible por otras personas)

  • Ser eficiente (ahorro de tiempo y recursos)

  • Ser portable (independiente de la máquina o del lenguaje utilizado)  

El algoritmo surge de la necesidad de resolver un problema dado. Para ello, siempre será posible crear múltiples soluciones. El algoritmo que seleccionemos será aquel que obtenga los resultados esperados en el menor tiempo posible y con el menor coste. Para ello debemos reflexionar sobre:

  • ¿Qué información o resultados se quieren obtener?
  • ¿A través de que procesos se podrán obtener los resultados?
  • ¿Se requiere algún proceso intermedio?
  • ¿Qué tipo de datos serán necesarios?
  • ¿Qué variables?
  • ¿Qué condiciones exige el problema para su solución?

Uno de los métodos más apropiados para desarrollar un algoritmo es el que se detalla a continuación:

Fuente: Slideshare de Paco González Caballero


Aunque no seamos conscientes, en la vida diaria estamos utilizando a diario algoritmos, muchos son muy sencillos, pero no dejan de ser algoritmos y que podemos describir utilizando el  lenguaje natural, es decir, con seudocódigo. Veamos un ejemplo muy básico:

                                

ALGORITMO ponerse los zapatos.

INICIO

Coger los zapatos.

SI los cordones de los zapatos están anudados ENTONCES desatar los zapatos

Sentarse en una silla.

Ponerse el zapato derecho en el pie derecho.

Atarse los cordones del zapato derecho.

Ponerse el zapato izquierdo en el pie izquierdo.

Atarse los cordones del zapato izquierdo.   

FIN