debug = false
num_itr = 10000
[true, false].each do |do_change|
num_seikai = 0
num_itr.times.each do |n|
seikai = rand(3)
ans = rand(3)
puts "first select: " + ans.to_s if debug
mon = nil
3.times do | c |
if c != seikai && c != ans
mon = c
break
end
end
puts "mon: " + mon.to_s if debug
final_ans = ans
if do_change
3.times do | c |
if c != ans && c != mon
final_ans = c
break
end
end
puts "change to " + final_ans.to_s if debug
end
if final_ans == seikai
puts "seikai" if debug
num_seikai += 1
else
puts "hazure" if debug
end
puts "" if debug
end
puts (do_change ? "change" : "no change")
puts "seikai ritsu: " + (num_seikai.to_f / num_itr * 100) .to_s
end