为了账号安全,请及时绑定邮箱和手机立即绑定

3个或更多数字的最小公倍数

3个或更多数字的最小公倍数

茅侃侃 2019-08-06 15:19:50
3个或更多数字的最小公倍数如何计算多个数字的最小公倍数?到目前为止,我只能在两个数字之间进行计算。但不知道如何扩展它来计算3个或更多数字。到目前为止,这就是我做到的LCM = num1 * num2 /  gcd ( num1 , num2 )使用gcd是计算数字的最大公约数的函数。使用欧几里得算法但我无法弄清楚如何计算3个或更多数字。
查看完整描述

3 回答

?
拉莫斯之舞

TA贡献1820条经验 获得超10个赞

您可以通过迭代计算两个数字的LCM来计算两个以上数字的LCM,即

lcm(a,b,c) = lcm(a,lcm(b,c))


查看完整回答
反对 回复 2019-08-06
?
阿波罗的战车

TA贡献1862条经验 获得超6个赞

这是一个ECMA风格的实现:

function gcd(a, b){
    // Euclidean algorithm
    var t;
    while (b != 0){
        t = b;
        b = a % b;
        a = t;
    }
    return a;}function lcm(a, b){
    return (a * b / gcd(a, b));}function lcmm(args){
    // Recursively iterate through pairs of arguments
    // i.e. lcm(args[0], lcm(args[1], lcm(args[2], args[3])))
    if(args.length == 2){
        return lcm(args[0], args[1]);
    } else {
        var arg0 = args[0];
        args.shift();
        return lcm(arg0, lcmm(args));
    }}


查看完整回答
反对 回复 2019-08-06
  • 3 回答
  • 0 关注
  • 897 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信