您的位置:首页 > 其它

最小公倍数和最大公约数方法

2017-06-30 16:58 316 查看
求最大共倍数和最小公约数的数学公式:a%b = mod  。  a和b的最大公约数与 b和mod的最大公约数是相等的。

下面是java下的实现:

public class MathUtil {

/*
* 最大公约数
*/
public static int gcd(int a , int b){

int gcd = 1 ,max ,min,mod;
max = a > b?a:b;
min = a <= b? a :b;
if(max%min == 0)
gcd = min;
else{
do{
mod = max % min;
if(mod == 0)
{
gcd = min;
break;
}
max = min;
min = mod;
}while(true);
}
return gcd;
}

/*
* 最小公倍数
*/
public static int gmd(int a , int b){
int gmd = 1 , x ,y;
int gcd = gcd(a ,b);
x = a / gcd;
y = b / gcd;
gmd = x*y*gcd;
return gmd;
}

public static void main(String[] args) {

System.out.println(gcd(12,20));
System.out.println(gmd(12,20));

}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: