题目:求出1000以内的所有“完全数”并输出它们(若n的包括1但不包括n本身的所有因子之和等于n,则n为“完全数”。例如6=1+2+3,28=1+2+4+7+14)。
C++实现:
#include <iostream>
using namespace std;
int main()
{
int n=1;
int sum=0;
int item=0;
while(n<=100000)
{
for(int i=1;i<=n-1;i++)
{
if(n%i==0)
sum += i;
}
if(sum == n)
{
cout<<n<<endl;
item ++;
}
sum=0;
n+=1;
}
cout<<"共有"<<item<<"个完全数"<<endl;
return 0;
}