3.2 亲密数

发布时间 2023-05-16 22:51:41作者: 自律小子丶

第一部曲:通过for循环枚举a求出b然后判断b是否满足所有因子之和是a,如果满足就输出,不满足继续循环判断

第二部曲:

 

第三部曲:

for(a=1;a<3000;a++)
{
for(b=0,i=1;i<a;i++)
{
if(a%i==0)
b+=i;
}
int s=0;
for(i=1;i<b;i++)
{
if(b%i==0)
s+=i;
}
if(s==a&&a<b)
cout<<a<<" "<<b<<endl;
}

第四部曲:

#include<iostream>
#include<algorithm>
using namespace std;
int main()
{
int i,a,b,s;
for(a=1;a<3000;a++)
{
for(b=0,i=1;i<a;i++)
{
if(a%i==0)
b+=i;
}
int s=0;
for(i=1;i<b;i++)
{
if(b%i==0)
s+=i;
}
if(s==a&&a<b)
cout<<a<<" "<<b<<endl;
}

return 0;
}