zoukankan      html  css  js  c++  java
  • 友好数对

    题意描述:
    输入两个正整数m和n,顺序输出m到n之间的所有友好数对。
    如果两个整数的所有正因子之和(包括1,不包括自身)等于对方,就称这对数是友好的。例如:1184和1210是友好数对
    解题思路:
    编写函数计算出m-n每个整数的所有正因子之和,然后利用函数算出该因子和的因子和是否等于该数本身,输出原整数与其因子和。
    代码实现:
    #include<stdio.h>
    int facsum(int n)
    {
     int i,sum=0;
     for(i=1;i<n;i++)
     {
      if(n%i==0)sum+=i;
     }
     return sum;
    }
    int main()
    {
     int m,n,i,k=0,find=0,t=0;
     scanf("%d%d",&m,&n);
     for(i=m;i<=n;i++)
     {
      t=facsum(i);
      if(facsum(t)==i&&t>i)
      {
       find=1;
       printf("%d %d ",i,t);
      }
     }
     if(find==0)printf("No answer ");
     return 0;
    }
    易错分析:
    没有准确理解数组应用,和友好数对的真正含义,大费周章,造成了不必要的杂乱。

  • 相关阅读:
    [jni]Getting Started
    USB接口程序编写
    mysql
    learn 学习 试错 练习 SSL
    svn
    第三方支付链接
    错误信息
    app 推广
    xcode 配置等
    .net wordpress 服务器类
  • 原文地址:https://www.cnblogs.com/yuanqingwen/p/10351736.html
Copyright © 2011-2022 走看看