js计算最大公约数和最小公倍数代码实例

(编辑:jimmy 日期: 2024/11/17 浏览:2)

一、计算最大公约数

1、小学时候一般采用质因数分解法,一般使用短除得到结果,下面用一种最初级的方法求最大公约数

function gcd2(a,b){
    var result = 1;
    for(var i = 1; i <= a && i <= b; i++ ){
      if(a%i == 0 && b%i == 0 ){
        result = i;
      }
    }
    return result;
  }

2、使用欧里几德算法,辗转相除法。具体原理自行百度。下面给出两种代码算法

递归

function gcd(a,b){
    if(b == 0){
      return a;
    }
    var r = a % b;
    console.log(r);
    return gcd(b,r);
  }

迭代

function GCD(a,b){
    var temp;
    while(b != 0){
      temp = a % b;
      a = b;
      b = temp;
    }
    return a;
  }

二、最小公倍数,最小公倍数的算法,是两个数的乘积除以最大公倍数

function scm(a,b){
  return (a*b)/gcd(a,b);
}

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。

一句话新闻
Windows上运行安卓你用过了吗
在去年的5月23日,借助Intel Bridge Technology以及Intel Celadon两项技术的驱动,Intel为PC用户带来了Android On Windows(AOW)平台,并携手国内软件公司腾讯共同推出了腾讯应用宝电脑版,将Windows与安卓两大生态进行了融合,PC的使用体验随即被带入到了一个全新的阶段。