Advertisement
theosib

balls

Jul 27th, 2018
196
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Ruby 1.13 KB | None | 0 0
  1. #!/usr/bin/ruby
  2.  
  3. $balls = [[:gold, :gold], [:silver, :gold], [:silver, :silver]]
  4.  
  5. $first_draw = {}
  6. $first_draw[:gold] = 0
  7. $first_draw[:silver] = 0
  8. $first_draw[:total] = 0
  9.  
  10. $second_draw = {}
  11. $second_draw[:gold] = 0
  12. $second_draw[:silver] = 0
  13. $second_draw[:total] = 0
  14.  
  15. for i in (0...1000000)
  16.   box_num = rand(3)
  17.   box = $balls[box_num]
  18.   ball_num = rand(2)
  19.   ball = box[ball_num]
  20.  
  21.   $first_draw[ball] += 1
  22.   $first_draw[:total] += 1
  23.  
  24.   next if ball == :silver
  25.  
  26.   ball2 = box[1 - ball_num]
  27.  
  28.   $second_draw[ball2] += 1
  29.   $second_draw[:total] += 1
  30. end
  31.  
  32. puts "First draw gold:    #{$first_draw[:gold]} / #{$first_draw[:total]} = #{$first_draw[:gold].to_f/$first_draw[:total].to_f}"
  33. puts "First draw solver:  #{$first_draw[:silver]} / #{$first_draw[:total]} = #{$first_draw[:silver].to_f/$first_draw[:total].to_f}"
  34. puts "When first draw is gold..."
  35. puts "Second draw gold:   #{$second_draw[:gold]} / #{$second_draw[:total]} = #{$second_draw[:gold].to_f/$second_draw[:total].to_f}"
  36. puts "Second draw solver: #{$second_draw[:silver]} / #{$second_draw[:total]} = #{$second_draw[:silver].to_f/$second_draw[:total].to_f}"
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement