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

การหา Primorial ของตัวเลข - JavaScript

Primorial ของ n คือผลคูณของจำนวนเฉพาะ n ตัวแรก (n# = 2 × 3 × 5 × 7 × ...)

ตัวอย่าง

n = 4
2 × 3 × 5 × 7 = 210

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

const num = 4;

const isPrime = n => {
  if (n === 1) return false;
  if (n === 2) return true;
  for (let x = 2; x < n; x++) {
    if (n % x === 0) return false;
  }
  return true;
};

const primorial = num => {
  if (num === 0) return 0;
  let count = 1, flag = 3;
  let prod = 2; // เริ่มจากจำนวนเฉพาะตัวแรก (2)

  while (count < num) {
    if (isPrime(flag)) {
      prod *= flag;
      count++;
    }
    flag++;
  }
  return prod;
};

console.log(primorial(num));

การทำงาน

  1. เริ่มจาก 2 (จำนวนเฉพาะตัวแรก)
  2. ตรวจสอบเลขคี่ตั้งแต่ 3 ขึ้นไปว่เป็นจำนวนเฉพาะหรือไม่
  3. คูณสะสมจนครบ n ตัว

ผลลัพธ์

210

ลำดับ Primorial: 2, 6, 30, 210, 2310, 30030, 510510, ...