欧几里德算法求最大公约数、最小公倍数

最大公约数:几个整数共有的最大因子。
最小公倍数:几个整数共有的最小倍数。

欧几里德算法
最大公约数:有两个非负整数p和q,如果q=0,那么p是p和q的最大公约数,否则,p除以q余数为r,那么p和q的最大公约数就是r和q的最大公约数。

实现代码

public static int getGCD (int p,int q){
      if(q==0)return p;
      int r = p%q;
      return getGCD(q,r);
}

最小公倍数:有两个非负整数p和q,如果q=0,那么q(即0)是p和q的最小公倍数,否则,p乘以q除以它俩的最大公约数就是p和q的最大公倍数。

实现代码

public static int getLCM (int p,int q){
      return p*q/getGCD(p,q);
}

你可能感兴趣的:(欧几里德算法求最大公约数、最小公倍数)