如何用 C/C++ 求 1 到 1000 内的所有完全数?

如题所述

用 C/C++求1到1000内的所有完全数

voidWS(int);

voidmain();

intn;

for(n=1;n<=1000;n++);

WS(n);

voidWS(intm);

{inti,sum=0;

for(i=1;i<m;i++);

if(m%i==0);

sum=sum+i;

if(sum==m);

printf("\n完数为%d=",m);

intj;

for(j=1;j<m;j++);

if(m%j==0);

printf("%d",j)。

定义

如果一个数恰好等于它的真因子之和,则称该数为“完全数”。各个小于它的约数的和等于它本身的自然数叫做完全数,又称完美数或完备数。例如:第一个完全数是6,它有约数1、2、3、6,除去它本身6外,其余3个数相加,1+2+3=6。第二个完全数是28,它有约数1、2、4、7、14、28,除去它本身28外,其余5个数相加,1+2+4+7+14=28。

温馨提示:答案为网友推荐,仅供参考
相似回答