辗转相除法

辗转相除法:
求最小公倍数:

 /* 求最小公倍数算法:
最小公倍数=两整数的乘积÷最大公约数
求最大公约数算法:
(1)辗转相除法
有两整数a和b:
① a%b得余数c
② 若c=0,则b即为两数的最大公约数
③ 若c≠0,则a=b,b=c,再回去执行①
例如求27和15的最大公约数过程为:
27÷15余12  15÷12余3  12÷3余0因此,3即为最大公约数*/   
int Common_Divisor(int m,int n)
{
      int rem; //余数,当余数为0的时候,最后的m即为最大公约数     
      //先用较小的数对较大的数取余,再用余数对较小的数求余,直到余数为零
      while(n > 0)
      {
            rem = m % n;
            m = n;
            n = rem;
      }
      return m; //将结果返回
}

//转载注明出处:https://www.cnblogs.com/Songjunxiang/p/13817361.html

posted @ 2020-10-14 21:05  Wait_Future  阅读(235)  评论(0编辑  收藏  举报