Um conjunto de regras ou instruções bem definidas para a solução de um problema. Por exemplo, a execução de um cálculo, com uma quantidade finita de passos. A expressão de um algoritmo em notação formal é uma das principais etapas de um programa de software.