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

การสร้างคู่ที่ต้องการภายในช่วงใน JavaScript

ปัญหา

เราต้องเขียนฟังก์ชัน JavaScript ที่รับตัวเลข n ฟังก์ชันควรสร้างอาร์เรย์ที่มีคู่จำนวนเต็ม [a, b] ที่ทำให้เงื่อนไขต่อไปนี้เป็นจริง:

0 <= a <= b <= n

ตัวอย่าง

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

const num = 4;
const findPairs = (n = 1) => {
  const arr = [];
  for (let i = 0; i <= n; i++) {
    for (let j = i; j <= n; j++) {
      let temp = [];
      temp.push(i, j);
      arr.push(temp);
    }
  }
  return arr;
};
console.log(findPairs(num));

ผลลัพธ์

[ [ 0, 0 ], [ 0, 1 ], [ 0, 2 ], [ 0, 3 ], [ 0, 4 ], [ 1, 1 ], [ 1, 2 ], [ 1, 3 ], [ 1, 4 ], [ 2, 2 ], [ 2, 3 ], [ 2, 4 ], [ 3, 3 ], [ 3, 4 ], [ 4, 4 ] ]

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

สร้างคู่ (a,b) ที่ 0≤a≤b≤n จำนวนคู่ = (n+1)(n+2)/2 สำหรับ n=4 ได้ 15 คู่ โค้ดใช้ nested loop j เริ่มจาก i เพื่อให้ a≤b