O uso de algoritmos na construção de programas de computadores é importante devido ao fato do computador executar uma tarefa exatamente como ela foi criada. Por isso os passos de um programa devem conter uma sequência lógica, sem redundância e de fácil interpretação. O problema que um algoritmo representa pode ser decomposto em três fases: entrada, processamento e saída.