implementacao algoritmo