最大公约数 最小公倍数

最大公约数

递归版:

int gcd(int a, int b)
{
    return b == 0 ? a : gcd(b, a%b);
}

非递归版:

int gcd(int a, int b)
{
    if (!a)
        return b;
    int c; 
    while (b)
    {// 非递归版
        c = b; 
        b = a%b;
        a = c;
    }
    return a;
}

最小公倍数

最小公倍数=两整数的乘积÷最大公约数

但要先除后乘,避免 a*b 溢出!

posted @ 2020-05-01 10:52  Jason66661010  阅读(126)  评论(0编辑  收藏  举报