解题思路:

注意事项:

参考代码:#include<stdio.h>                      //所以我想题目就是关于A的循环,把每次循环中A的因数和赋值给B,再判断B的因数和是否等于A
int main()
{
 int sum1,sum2;
 int A,i,j;
 for(A=1;A<=3000;A++)
 {
  sum1=0;
  for(i=1;i<A;i++)
  {
   if(A%i==0)
   {
    sum1+=i;              //求A的因数和sum1.
   }
  }
  sum2=0;
  for(j=1;j<sum1;j++)          //括号里的sum1就是B,因为题目说:A的因数和=B(所以假设A的因数和等于B成立)
  {
   if(sum1%j==0)
   {
    sum2+=j;            //求B(sum1)的因数和.
   }
  }
  if(sum2==A && A<sum1)       //判断B(sum1)的因数和是否等于A与亲密数对是否符合(A<B(sum1))的模式
  printf("(%d,%d)",A,sum1);
 }
 return 0;
}

 

0.0分

0 人评分

  评论区

#include<stdio.h>
main()
{
    int i,sa,sb,j;
    for(i=1;i<=3000;i++)
    {
        sa=0,sb=0;
        for(j=1;j<i;j++)
        {
            if(i%j==0) sa+=j;
        }
        for(j=1;j<sa;j++)
        {
            if(sa%j==0) sb+=j;
        }
        if(sa==sb&&i<sa)
        {
            printf("(%d,%d)",i,sa);
        }
    }
}
我这个为什么得不到正确答案
2019-04-23 11:34:46
  • «
  • 1
  • »