Sha256: b6e67a092eac143128294b89e5cee93f6bd8ec5e9cbbeb443635e09ab93ed5ff
Contents?: true
Size: 862 Bytes
Versions: 185
Compression:
Stored size: 862 Bytes
Contents
let realPrimes = []; function generatePrimes(uptoNumber) { if (realPrimes.length > 0) { return realPrimes; } let currentPrime, possiblePrimes = []; for (let i = 2; i <= uptoNumber; i++) { possiblePrimes.push({ number: i, prime: true }); } for (let i = 2; i < Math.sqrt(possiblePrimes.length); i++) { for (let j = 0; j < possiblePrimes.length; j++) { currentPrime = possiblePrimes[j]; if (currentPrime.number !== i && currentPrime.number % i === 0) { currentPrime.prime = false; } } } return possiblePrimes .filter(candidate => candidate.prime) .map(p => p.number); } class Prime { nth(nthPrime) { if (nthPrime === 0) { throw new Error('Prime is not possible'); } realPrimes = generatePrimes(200000); return realPrimes[nthPrime - 1]; } } export default Prime;
Version data entries
185 entries across 185 versions & 1 rubygems