Programa para calcular o número de divisores de um número

Não é só o divisor máximo!

Ex:
Qual o número de divisores de 5.000.000 ?

5.000.000 = 5 . 10 6 = 5 . (2 . 5) 6 = 5 . 2 6 . 5 6 = 2 6 . 5 7
Portanto, o número de divisores positivos de 5.000.000 será igual a:

n = (6+1) . (7+1) = 7 . 8 = 56
Portanto, 5.000.000 possui 56 divisores positivos.

Não consigo achar uma lógica que dê certo
Alguma luz ai gente, por favor

Acho que se você montar uma estrutura simples de repetição e calcular mods que dêm 0 no seu número deve funcionar.

[code]Integer numero, resultado = 0;

for (int divisor=2; divisor<=numero; divisor=+2) {
if (numero % divisor == 0)
resultado++;[/code]