class ProductTable::Calculator

Public Class Methods

calculate_primes(count) click to toggle source
# File lib/product_table/calculator.rb, line 9
def calculate_primes(count)
  return [] if count == 0
  prime_numbers = [2]
  current = 2
  while prime_numbers.size < count
    current += 1
    prime_numbers << current if is_prime?(current)
  end

  prime_numbers
end
calculate_product(numbers_list) click to toggle source
# File lib/product_table/calculator.rb, line 21
def calculate_product(numbers_list)
  (Matrix[numbers_list].transpose * Matrix[numbers_list]).to_a
end

Private Class Methods

is_prime?(number) click to toggle source
# File lib/product_table/calculator.rb, line 27
def is_prime?(number)
  return false if number < 2
  (2..number-1).count { |n| number % n == 0 } == 0
end