输出1000内的全部“完数”,要求每行输出5个,并统计完数的个数。
程序员文章站
2022-07-15 12:24:34
...
完数
思路:
完全数(Perfect number),又称完美数或完备数,是一些特殊的自然数。它所有的真因子(即除了自身以外的约数)的和(即因子函数),恰好等于它本身。
如果一个数恰好等于它的真因子之和,则称该数为“完全数”。第一个完全数是6,第二个完全数是28,第三个完全数是496,后面的完全数还有8128、33550336等等。截至2018年,相关研究者已经找到51个完全数。
程序代码:
#include<stdio.h>
int main(){
int sum;
for(int i=2;i<=1000;i++) {
int sum=0;
for(int j=1;j<i;j++){
int t=i%j;
if(t==0)
sum+=j;
}
if(sum==i)
printf("%d\n",i);
}
return 0;
}
运行结果: