เราจำเป็นต้องเขียนฟังก์ชัน JavaScript ที่รับค่าตัวเลข เช่น n เป็นอาร์กิวเมนต์แรกและอาร์กิวเมนต์เดียว
ฟังก์ชันควรคืนค่าการนับของจำนวนเฉพาะทั้งหมดตั้งแต่ 2 จนถึงจำนวน n
ตัวอย่างเช่น −
For n = 10, the output should be: 4 (2, 3, 5, 7) For n = 1, the output should be: 0
ตัวอย่าง
const countPrimesUpto = (num = 1) => { if (num < 3) { return 0; }; let arr = new Array(num).fill(1); for (let i = 2; i * i < num; i++) { if (!arr[i]) { continue; }; for (let j = i * i; j < num; j += i) { arr[j] = 0; }; }; return arr.reduce( (a,b) => b + a) - 2; }; console.log(countPrimesUpto(35)); console.log(countPrimesUpto(6)); console.log(countPrimesUpto(10));
ผลลัพธ์
และผลลัพธ์ในคอนโซลจะเป็น −
11 3 4