标签:strong 开启 ima font inpu als put san dom
‘‘‘
开始,你可以随意选择一个抽屉,在开启它之前,
主持人会开启另外一个抽屉,露出抽屉里的玻璃球。
这时,主持人会给你一次更换自己选择的机会。
请自己认真分析一下“不换选择能有更高的几率获得钻石,
还是换选择能有更高的几率获得钻石?或几率没有发生变化?”写出你分析的思路和结果。
设法编写python程序验证自己的想法,
验证的结果支持了你的分析结果,还是没有支持你的分析结果,
请写出结果,并附上你的程序代码,并在程序代码中通过注释说明你解决问题的思路。
(提示:可以借助随机数函数完成此程序)
‘‘‘
import random
print("钻石和玻璃球的游戏开始了")
# 摆在你面前有3个关闭的抽屉
lst_dic = [{‘抽屉‘:‘钻石‘},{‘抽屉‘:‘玻璃球‘},{‘抽屉‘:‘玻璃球‘}]
# 定义钻石
zs = 0
# 定义玻璃球
blq = 0
def Game(your_choice,lst_dic):
isLouchu = False
# 查看主持人是否露出
for num in range(len(lst_dic)):
if not isLouchu:
if lst_dic[your_choice][‘抽屉‘] == ‘钻石‘:
# 第一种 抽到 钻石
if num != your_choice:
print("主持人露出了 %d 号抽屉的玻璃球"%(num + 1))
isLouchu = True
else:
# 第二种 抽到 玻璃球
if num != your_choice and lst_dic[num][‘抽屉‘] != ‘钻石‘:
print("主持人露出了 %d 号抽屉的玻璃球"%(num + 1))
isLouchu = True
choice = ‘yn‘
you_select = random.choice(choice)
if you_select == ‘y‘:
lst_nums = [0,1,2]
ischoose = False
for new_choice in lst_nums:
if not ischoose :
if (new_choice != num) and (new_choice != your_choice):
print("你新的选择是:",new_choice+1,"号抽屉")
your_choice = new_choice
ischoose = True
ChooseLater(your_choice)
else:
print("不变选择,继续坚持我的 %d 号抽屉"%(your_choice + 1))
your_choice = your_choice
ChooseLater(your_choice)
def ChooseLater(your_choice):
# 选择后进行计数 公布答案
global zs, blq
if lst_dic[your_choice][‘抽屉‘] == ‘钻石‘:
zs += 1
# 钻石数 +1
else:
blq += 1
# 玻璃球数 +1
answer_num = 0
isanswer = False
for answer in lst_dic:
if not isanswer:
if answer[‘抽屉‘] == ‘钻石‘:
print("钻石在 %d 号抽屉 "%(answer_num + 1))
isanswer = True
answer_num += 1
nums = int(input("请输入想要实验的次数"))
for i in range(nums):
# 你可以随意选择一个抽屉
your_choice = random.randint(0, 2)
print("你当前想要选择的是 %d 号抽屉" % (your_choice + 1))
Game(your_choice,lst_dic)
print("抽到的钻石数为: %d"%(zs))
print("抽到的玻璃球数为: %d"%(blq))
print("钻石的概率是 %.2f"%(zs/nums))
2020-05-24
标签:strong 开启 ima font inpu als put san dom
原文地址:https://www.cnblogs.com/hany-postq473111315/p/12952401.html