完数
求某一范围内完数的个数。
如果一个数等于它的因子之和,则称该数为“完数”(或“完全数”)。例如,例如6的因子为1,2,3,而6=1+2+3,因此6是“完数”。
我们首先要确定一个上限,在这个上限范围内我们通过for循环找出符合条件的数则为完数。
#include<iostream>
using namespace std;
int main()
{
int m,N;
cout<<"请输入范围上限:"<<endl;
cin>>N;
cout<<N<<"以下的完数分别为:"<<endl;
for(int i=2;i<=N;i++)
{
m=0;
for(int j=1;j<i;j++)
{
if(i%j==0)
{
m+=j;
}
}
if(m==i)
{
cout<<i<<endl;
}
}
return 0;
}
运行结果如下: