当前位置: 移动技术网 > IT编程>开发语言>JavaScript > JS获取最大公约数的方法

JS获取最大公约数的方法

2019年03月20日  | 移动技术网IT编程  | 我要评论

已经有几种常见方法,以辗转相除法为例:

function gcd(a, b) {
    if (a % b === 0) {
        return b;
    }
    return arguments.callee(b, a % b);
}
console.log(gcd(28, 12)); // 4
console.log(gcd(7890, 123456)); // 6
console.log(gcd(5, 13)); // 1 (公约数为1说明两数互质)

更相减损法:

// 更相减损法
function gcd(a, b) {
    if (a === b) {
        return b;
    }
    if (a > b) {
        a -= b;
    } else {
        b -= a;
    }
    return arguments.callee(a, b)
}

console.log(gcd(28, 12)); // 4
console.log(gcd(7890, 123456)); // 6
console.log(gcd(5, 13)); // 1 (公约数为1说明两数互质)

如对本文有疑问, 点击进行留言回复!!

相关文章:

验证码:
移动技术网