找出1万(10000)以内所有自然数中的完数,C语言
问题描述:找出1万(10000)以内所有自然数中的完数,并统计个数。
完数, 即本身等于所有因子之和如 6=1+2+3
编译环境vc++6.0
#include <stdio.h>
int main()
{
int count = 0;
for (int i = 2; i <= 10000; i++)
{
int sum = 0;
for (int j = 1; j <= i / 2; j++)
{
if (i % j == 0)
sum += j;
}
if (i == sum)
{
printf("%d\t", i);
count++;
}
else continue;
}
printf("\n总共有%d个完数\n", count);
return 0;
}
输出结果:
还没有评论,来说两句吧...