Module: PrimeNumbers
- Defined in:
- lib/prime_numbers.rb,
lib/prime_numbers/version.rb
Constant Summary collapse
- VERSION =
"0.0.3"
Class Method Summary collapse
- .first_prime_prods(n = 10) ⇒ Object
- .fist_primes(n = 10) ⇒ Object
- .table_product_primes(n = 10) ⇒ Object
Class Method Details
.first_prime_prods(n = 10) ⇒ Object
18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 |
# File 'lib/prime_numbers.rb', line 18 def self.first_prime_prods(n = 10) return 0 unless n > 1 rows = [] next_prime = 0 prime_prod = 1 (n - 1).times do |i| next_prime = PrimeInt::Integer.next_prime(next_prime) prime_prod = prime_prod * next_prime rows << [i, next_prime, prime_prod] end rows end |
.fist_primes(n = 10) ⇒ Object
7 8 9 10 11 12 13 14 15 16 |
# File 'lib/prime_numbers.rb', line 7 def self.fist_primes(n = 10) e = Enumerator.new do |els| i = 2 loop do els << i i = PrimeInt::Integer.next_prime(i) end end e.take n end |
.table_product_primes(n = 10) ⇒ Object
36 37 38 39 |
# File 'lib/prime_numbers.rb', line 36 def self.table_product_primes(n = 10) # This is just a binding from an external plugin which can be modified / substituted during time Terminal::Table.new :headings => ['i', 'Prime', 'Product'], :rows => first_prime_prods(n) end |