Generator Bilangan Prima
Ini hanyalah contoh tambahan dari tulisan yang gue tulis sebelumnya disini https://afief.net/iterables-iterator-generator.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
function * primeNumbers (count = 10) { const numbers = [] let current = 2 const isPrime = (num) => !numbers.find(v => Number.isInteger(num / v)) while (true) { if (count <= 0) break if (isPrime(current)) { numbers.push(current) yield current count-- } current++ } } |
Untuk membuat 15 bilangan prima, cukup dengan
1 2 |
[...primeNumbers(15)] // [2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47] |
Leave a Reply