Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> JavaScript

Tính bội chung nhỏ nhất của một phạm vi trong JavaScript

Chúng ta cần viết một hàm nhận một mảng hai số a và b (a >= b) và trả về bội chung nhỏ nhất của tất cả các số trong khoảng [a, b].

Phương pháp

Đầu tiên viết hàm tính bội chung nhỏ nhất (LCM) của hai số, sau đó gọi đệ quy qua các số trong khoảng [a, b] và trả về kết quả.

Ví dụ

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]));

Kết quả

Đầu ra trong console sẽ là:

168 12252240 840 26771144400