📜  查找LCM的JavaScript程序(1)

📅  最后修改于: 2023-12-03 15:10:43.068000             🧑  作者: Mango

JavaScript程序:查找LCM

本JavaScript程序用于查找给定数组的最小公倍数(LCM)。

实现

为了计算LCM,我们需要使用以下公式:

LCM(a, b) = (a * b) / GCD(a, b)

其中,GCD是最大公约数。因此,我们需要编写一个GCD函数来计算最大公约数。

以下是实现代码片段:

function gcd(a, b) {
  if (b === 0) {
    return a;
  } else {
    return gcd(b, a % b);
  }
}

function lcm(arr) {
  let res = arr[0];
  for (let i = 1; i < arr.length; i++) {
    res = (res * arr[i]) / gcd(res, arr[i]);
  }
  return res;
}

首先,我们定义了一个名为gcd的函数,它需要两个参数a和b。如果b等于0,则返回a。否则,我们递归地调用gcd函数,将b和a除以b的余数作为参数传递。

然后,我们定义了一个名为lcm的函数,它需要一个数组参数arr。我们先初始化一个变量res,将其设置为数组的第一个元素。然后,我们使用一个for循环迭代数组中的其余元素。对于每个元素,我们将res与其乘积除以它们的最大公约数,得到新的res值。最后,我们将res作为返回值返回。

示例

以下是如何使用此函数查找给定数组的LCM的示例:

const arr = [4, 6, 8];
console.log(lcm(arr)); // 输出24
总结

这个JavaScript程序使用GCD和LCM的公式来查找给定数组的最小公倍数。它可以作为计算LCM的实用工具,在JavaScript应用程序中使用。