k=2
mentre(k <= √N){
    resto = N modulo k
    exp=0
    mentre (resto=0){ 
        exp=exp+1 //incrementiamo il contatore dell'esponente
        N=N/k
        resto=N modulo k // calcoliamo il NUOVO n modulo k ( N è stato modificato)
    }
    Se (exp<>0) allora
         output divisore ^ exp
    fine se
    k=k + 1
}
Se (N<>1) allora
     output N
fine se