Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> JavaScript

ตัวเลขมากที่สุดที่หารด้วย n ลงตัวภายในขอบเขตใน JavaScript

ปัญหา

เราต้องเขียนฟังก์ชัน JavaScript ที่รับตัวเลข n และตัวเลขขอบเขต b ฟังก์ชันควรหาจำนวนเต็มที่มากที่สุด num ที่:

  • num หารด้วย divisor ลงตัว
  • num น้อยกว่าหรือเท่ากับ bound
  • num มากกว่า 0

ตัวอย่าง

โค้ดตัวอย่างด้านล่าง:

const n = 14;
const b = 400;
const biggestDivisible = (n, b) => {
  let max = 0;
  for (let j = n; j <= b; j++) {
    if (j % n == 0 && j > max) {
      max = j;
    }
  }
  return max;
};
console.log(biggestDivisible(n, b));

ผลลัพธ์

392

คำอธิบายเพิ่มเติม

หาตัวคูณของ 14 ที่ ≤ 400 และมากที่สุด: 14×28=392 โค้ดวนลูปจาก n ถึง b สามารถคำนวณได้ทันที: `Math.floor(b / n) * n` ซึ่งเป็น O(1)