En algún momento has cometido un error de planteamiento respecto al problema.
Aqui tienes una muestra de como ejecuta tu código (con una pequeña variación para mostrar cada divisor).
Como podrás observar, los números imprimidos por pantalla coinciden con tu desarrollo, PERO en el programa hay algo más:
Así que:
a) no has contemplado la propia suma de si mismo en tus cálculos a mano
o bien
b) esta suma sobra en el programa.
Según sea el planteamiento del problema, es uno u otro fallo.
Aqui tienes una muestra de como ejecuta tu código (con una pequeña variación para mostrar cada divisor).
Como podrás observar, los números imprimidos por pantalla coinciden con tu desarrollo, PERO en el programa hay algo más:
Código (cpp) [Seleccionar]
s=s+n; //Sumamos el numero inicial que es divisor de él mismo
Así que:
a) no has contemplado la propia suma de si mismo en tus cálculos a mano
o bien
b) esta suma sobra en el programa.
Según sea el planteamiento del problema, es uno u otro fallo.