Um algoritmo possui as seguintes características:
- O algoritmo tem fim;
- Não deve dar margem à dupla interpretação;
- Produz informações de saída para o mundo externo ao do ambiente do algoritmo;
- Ser efetivo no que diz respeito à execução em um tempo finito de todas as etapas existentes no algoritmo;
A partir de um algoritmo, é possível implementá-lo em qualquer linguagem de programação.
O algoritmo somado à uma linguagem de programação resultará em um Programa.