Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Javascript

การคำนวณ 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