Un algoritmo es una secuencia precisa de pasos que resuelve un problema en un tiempo finito. Los algoritmos son independientes del lenguaje de programación o el ordenador que los ejecuta. Para crear un programa, se debe primero analizar el problema, diseñar una solución mediante un algoritmo, codificar el algoritmo en un lenguaje de programación, probar el programa, y documentarlo.