找出1000以内的完数
2016-10-17 本文已影响140人
PZcoder
如果一个数恰好等于它的因子之和,这个数就称为”完数”.
例如,6的因子为 1,2,3 而 6 = 1+2+3 ,因此6是完数.
编程找出1000以内所有的完数,并按照下面的格式输出其因子:
6 = 1+2+3
for (int i = 2; i < 1000; i ++)
{
int sum = 0;
for (int j = 1; j < i; j ++)
{
if (i % j == 0)
{
sum += j;
}
}
if (sum == i)
{
printf("\n%d=1",i);
for (int k = 2; k < i; k ++)
{
if (i % k == 0)
{
printf("+%d",k);
}
}
}
}