Cita:
Iniciado por vangodp
Código C++:
Ver original#include<stdio.h>
int main(void) {
int a, numero, suma;
a = 1;
numero = 0;
suma = 0;
printf("Introduce un numero y comprobemos si es perfecto: ");
while ( a < numero )
{
if(numero%a==0)
{
suma+=a;
}
a++;
}
if(suma==numero)
{
printf("El numero %d SI es perfecto, bien.\n", numero
); }
else
{
printf("El numero %d por desgracia no es perfeco, vuelva a intentarlo.", numero
); }
return 0;
}
Vaya tontería... lo tenía exactamente igual pero a saberse el motivo pero no había inicializado la suma.... me cago en tó XDDDDDDDDDDDDD
Muchísimas gracias por tu ayuda amigo

EDIT: Gracias por lo del código con menos carga, me servirá como ejemplo para futuros códigos.