一些数学问题

 

欧几里得算法求最大公约数

public class gcd {
    //最大公约数
    //欧几里得算法(辗转相除法)最为出名:
    //
    //计算(a, b), 若b是0,则最大公约数为a;否则。将a除以b得到余数r,a和b的最大公约数就是b和r的最大公约数,即:(a, b) = (b, r)
    public int gcd(int a,int b){
        if (b==0){
            return a;
        }
        else return gcd(b,a%b);
    }
    //相应的最小公倍数求法:
    public int lcm(int a ,int b){
        return a*b/gcd(a,a%b);
    }
}

 

posted @ 2021-01-06 16:39  数码暴农  阅读(55)  评论(0)    收藏  举报
TOP