Class: Prime::EratosthenesSieve
- Inherits:
-
Object
- Object
- Prime::EratosthenesSieve
- Includes:
- Singleton
- Defined in:
- lib/prime.rb
Overview
Internal use. An implementation of eratosthenes’ sieve
Instance Method Summary collapse
- #get_nth_prime(n) ⇒ Object
-
#initialize ⇒ EratosthenesSieve
constructor
A new instance of EratosthenesSieve.
Constructor Details
#initialize ⇒ EratosthenesSieve
Returns a new instance of EratosthenesSieve.
425 426 427 428 429 |
# File 'lib/prime.rb', line 425 def initialize @primes = [2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47, 53, 59, 61, 67, 71, 73, 79, 83, 89, 97, 101] # @max_checked must be an even number @max_checked = @primes.last + 1 end |
Instance Method Details
#get_nth_prime(n) ⇒ Object
431 432 433 434 |
# File 'lib/prime.rb', line 431 def get_nth_prime(n) compute_primes while @primes.size <= n @primes[n] end |