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.
520 521 522 523 524 |
# File 'lib/prime.rb', line 520 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
526 527 528 529 |
# File 'lib/prime.rb', line 526 def get_nth_prime(n) compute_primes while @primes.size <= n @primes[n] end |