Class: MontyHallProblem::Host
- Inherits:
-
Object
- Object
- MontyHallProblem::Host
- Defined in:
- lib/monty_hall_problem.rb
Instance Method Summary collapse
-
#initialize(doors, car_size = 1) ⇒ Host
constructor
A new instance of Host.
- #make_known(idx) ⇒ Object
- #open_wronth_door(idx, open_size = 1) ⇒ Object
- #put_cars ⇒ Object
Constructor Details
#initialize(doors, car_size = 1) ⇒ Host
Returns a new instance of Host.
8 9 10 11 |
# File 'lib/monty_hall_problem.rb', line 8 def initialize(doors, car_size=1) @doors = doors @car_size = car_size end |
Instance Method Details
#make_known(idx) ⇒ Object
27 28 29 |
# File 'lib/monty_hall_problem.rb', line 27 def make_known(idx) @doors.door[idx] end |
#open_wronth_door(idx, open_size = 1) ⇒ Object
21 22 23 24 25 |
# File 'lib/monty_hall_problem.rb', line 21 def open_wronth_door(idx, open_size = 1) idxs = (@doors.no_car_door_idx - Array(idx)).sample(open_size) @doors.opened_door_idx += idxs unless idxs.empty? idxs end |
#put_cars ⇒ Object
13 14 15 16 17 18 19 |
# File 'lib/monty_hall_problem.rb', line 13 def put_cars @car_size.times do loop do break if @doors.put(rand(@doors.size)) end end end |