Class: NextNumberDeterminator
- Inherits:
-
Object
- Object
- NextNumberDeterminator
- Defined in:
- lib/threesmodel/next_number_determinator.rb
Instance Method Summary collapse
- #highest_number(game_board) ⇒ Object
-
#initialize ⇒ NextNumberDeterminator
constructor
A new instance of NextNumberDeterminator.
- #select_number(game_board) ⇒ Object
Constructor Details
#initialize ⇒ NextNumberDeterminator
Returns a new instance of NextNumberDeterminator.
2 3 4 |
# File 'lib/threesmodel/next_number_determinator.rb', line 2 def initialize @score_table = [0,1,2,3,6,12,24,48,96,192,384,768,1536,3072,6144] end |
Instance Method Details
#highest_number(game_board) ⇒ Object
6 7 8 9 10 11 12 13 14 15 16 |
# File 'lib/threesmodel/next_number_determinator.rb', line 6 def highest_number(game_board) highest = 0 game_board.row_vectors.each {|row| row.to_a.each {|value| if (value > highest) then highest = value end } } return highest end |
#select_number(game_board) ⇒ Object
18 19 20 |
# File 'lib/threesmodel/next_number_determinator.rb', line 18 def select_number(game_board) @score_table[rand(1..([3, @score_table.index(highest_number(game_board))-2].max))] end |