From 7331661ad42cedd90053d9182ce023caa438f61f Mon Sep 17 00:00:00 2001 From: Krishna Gupta Date: Thu, 30 Oct 2025 21:22:41 +0530 Subject: [PATCH] Add JavaScript implementation for prime number generation (Basic + Sieve methods) --- Basics/prime.js | 44 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 44 insertions(+) create mode 100644 Basics/prime.js diff --git a/Basics/prime.js b/Basics/prime.js new file mode 100644 index 0000000..8b6c589 --- /dev/null +++ b/Basics/prime.js @@ -0,0 +1,44 @@ +// Function to check primes using the Basic Method +function basicPrimes(n) { + const primes = []; + for (let i = 2; i <= n; i++) { + let isPrime = true; + for (let j = 2; j * j <= i; j++) { + if (i % j === 0) { + isPrime = false; + break; + } + } + if (isPrime) primes.push(i); + } + return primes; +} + +// Function to find primes using Sieve of Eratosthenes +function sievePrimes(n) { + const isPrime = new Array(n + 1).fill(true); + isPrime[0] = isPrime[1] = false; + + for (let i = 2; i * i <= n; i++) { + if (isPrime[i]) { + for (let j = i * i; j <= n; j += i) { + isPrime[j] = false; + } + } + } + + return isPrime + .map((prime, i) => (prime ? i : null)) + .filter((num) => num !== null); +} + +// Example usage +const n = 30; + +console.log("Prime numbers up to", n, "(Basic Method):"); +console.log(basicPrimes(n).join(", ")); + +console.log(); + +console.log("Prime numbers up to", n, "(Sieve Method):"); +console.log(sievePrimes(n).join(", "));