Tom Says: Safe code is boring code! Why??
Previous page:
Daily Crap 2009-12-10
Next page:
Daily Crap 2009-12-20
# hey, it's ruby tiiiiime
def roll_one
rand(6) + 1
end
def roll prev_square = 0, num_doubles = 0
roll1, roll2 = roll_one, roll_one
if roll1 == roll2 && num_doubles == 0
[prev_square + roll1 + roll2] + roll(prev_square + roll1 + roll2, num_doubles + 1)
else
[prev_square + roll1 + roll2]
end
end
times = 1000000
counts = []
times.times do
roll.each do |s|
if counts[s]
counts[s] += 1
else
counts[s] = 1
end
end
end
puts "Monopoly roll probabilities"
counts.each_with_index do |c, i|
puts "chances of rolling #{i}\t#{(c || 0).to_f / times * 100.0} %"
endPosted Dec 15, 2009, in the night.