完数

求某一范围内完数的个数。

如果一个数等于它的因子之和,则称该数为“完数”(或“完全数”)。例如,例如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;
}

运行结果如下:

 

posted @ 2023-05-08 20:33  为20岁努力  阅读(22)  评论(0编辑  收藏  举报