Algoritmo funcionando segundo especificacao