计算范围JavaScript的最小公倍数

我们需要编写一个函数,该函数接受两个数字a和b(a> = b)的数组,并返回[a,b]之间所有数字的最小公倍数。

方法

首先,我们将编写一个基本函数来计算两个数字的最小公倍数,一旦有了,我们将递归地调用介于[a,b]之间的数字,最后返回结果。

示例

const lcm = (a, b) => {
   let min = Math.min(a, b);
   while(min >= 2){
      if(a % min === 0 && b % min === 0){
         return (a*b)/min;
      };
      min--;
   };
   return (a*b);
};
const leastCommonMultipleInRange = (arr, len = arr[0], res = 1) => {
   if(len <= arr[1]){
      return leastCommonMultipleInRange(arr, len+1, lcm(res, len));
   };
   return res;
};
console.log(leastCommonMultipleInRange([6, 8]));
console.log(leastCommonMultipleInRange([6, 18]));
console.log(leastCommonMultipleInRange([1, 8]));
console.log(leastCommonMultipleInRange([10, 25]));

输出结果

控制台中的输出将为-

168
12252240
840
26771144400