- 求400之内的亲密对数。所谓亲密对数A和B,即A不等于B,且A的所有因子(如,6的因子是1、2、3)之和等于B,B的所有因子之和等于A。要求:
(1)定义函数int Factor_Sum(int m); 返回m的所有因子之和。
(2)求出的所有的亲密对数(A,B),且A<B。
#include <iostream>
using namespace std;
int Factor_Sum(int m)
{ int sum=0;
for(int i=1;i<m;i++)
if(m%i==0)
sum+=i;
return sum;}
int main()
{ int a;
int b[100];
int j=0;
for(a=1;a<=400;a++)
{ int i=Factor_Sum(a);
if(a==Factor_Sum(i)&&i!=a)
{b[j]=a;j++;} }
int k=j+1;
for(int t=0;t<k/2;t++)
cout<<"("<<b[t]<<","<<b[t+k/2]<<")";
return 0;}