羊车门问题(Python)

时间:2021-12-20 07:58:48

羊车门问题(结对作业)

在完成本题之前,请仔细阅读下面内容:

题目描述:有3扇关闭的门,一扇门后面停着汽车,其余门后是山羊,只有主持人知道每扇门后面是什么。参赛者可以选择一扇门,在开启它之前,主持人会开启另外一扇门,露出门后的山羊,然后允许参赛者更换自己的选择。

作业完成人:

学号:20181101173,荀梓恒

学号:20181101197,叶普旭

1、按照你的第一感觉回答,你觉得不换选择能有更高的几率获得汽车,还是换选择能有更高的几率获得汽车?或几率没有发生变化?

答:几率没有发生变化。

2、请自己认真分析一下“不换选择能有更高的几率获得汽车,还是换选择能有更高的几率获得汽车?或几率没有发生变化?” 写出你分析的思路和结果。

答:参赛者选择的结果有三分之一的概率选中汽车,三分之二的概率选中羊。

不换选择:参赛者选中汽车的概率为三分之一。

换选择:参赛者有三分之一的概率选中汽车,此时换选择,将不会得到汽车。

    参赛者有三分之二的概率选中羊,此时换选择,会得到汽车。

    则换选择选中车的概率为三分之二。

根据以上分析,可得:换选择有更高的几率获得汽车。

3、请设法编写程序验证自己的想法,验证的结果支持了你的分析结果,还是没有支持你的分析结果,请写出程序运行结果,以及其是否支持你的分析。(提示:可以借助随机数函数完成此程序)

答:

程序运行结果如下

不改选择:0.332403
更改选择:0.667597

运行结果与分析结果一致,说明分析正确。

4、代码如下:

 import random
times=1000000
first=0
change=0
for i in range(times):
real=randint(0,2)
guess=randint(0,2)
if(real==guess):
first+=1
else:
change+=1
print("不改选择:{}".format(first/times))
print("更改选择:{}".format(change/times))