Class: Rubeuler::Problem

Inherits:
Object
  • Object
show all
Includes:
PayDirt::UseCase
Defined in:
lib/rubeuler/problem.rb

Instance Method Summary collapse

Constructor Details

#initialize(options) ⇒ Problem

Returns a new instance of Problem.

Raises:

  • (TypeError)


9
10
11
12
13
14
# File 'lib/rubeuler/problem.rb', line 9

def initialize(options)
  load_options(:number, :answer, options)

  raise TypeError, ':answer should be a string' unless @answer.is_a?(String)
  raise TypeError, ':number should be an integer' unless @number.is_a?(Fixnum)
end

Instance Method Details

#execute!Object



16
17
18
19
20
21
# File 'lib/rubeuler/problem.rb', line 16

def execute!
  time = timed_answer
  true_or_false = @data == solution ? true : false

  return PayDirt::Result.new(success: true, problem: @number, data: data)
end