【c语言】(循环)找出1到10000的完全数
题目:
找出1到10000中的完全数
完全数:完全数的所有因数之和等于其本身(1不是完全数)
-———-如:(6 = 1 + 2 + 3)
思路分析:
- 找出一个数的全部因数
- 判断因数之和是否等于本身
代码实现:
#include<stdio.h>
int main()
{
int num = 0 , i = 0 , sum = 0; // i为循环体,sum用于加和一个数的因数
for(num = 2; num <= 10000; num++)
{
sum = 0; // 重置sum
for(i = 1; i <= num/2; i++)
{
if(num % i == 0)
{
sum = sum + i;
}
}
if(num == sum)
{
printf("%d\t",num);
}
}
return 0;
}
还没有评论,来说两句吧...