gastoncmb | |
| 2009-05-07 00:55 - Respuestas: 0 - Tema nº: 2591669
Windows XP Profesional .
Necesito ayuda, me han pedido que configure una aplicacion con las siguientes instrucciones:
Escribir un programa que encuentre los primeros 4 números perfectos. Un número perfecto es un entero positivo, que es igual a la suma de todos los enteros positivos (excluido él mismo) que son divisores del número. Por ejemplo, el primer número perfecto es 6, ya que los divisores de 6 son 1, 2, 3 y 1 + 2 + 3 = 6.
Yo trabajo con el codeblocks y lo arme de esta manera:
#include
int main()
{
int n=2, d=1, cont=0, sd=0;
printf ("Se calcularan los numeros perfectos:\n");
while (contd)
{
if (n%d==0)
{
sd=sd+d;
}
else
{
}
if (sd=n)
{
printf ("El numero %d es perfecto.\n\a", n);
cont=cont+1;
}
else
{
}
d ++;
}
n ++;
}
return 0;
}
Pero si prueban, al compilarlo y comenzar el programa no me de el 6, 28, 496 y 8128. Porque?? Ya meh an recomendado hacerlo con el bucle FOR pero quiero saberp oque no anda con este. Graciass
| |
|
|