其他分享
首页 > 其他分享> > 解羊车门问题

解羊车门问题

作者:互联网

作业完成人:

学号:20171601032,李超宇

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

答:换选择能有更高的几率获得汽车。


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

答:

  有两种情况:

    ① 如果一开始选择的是羊门,另外一个羊门则会在主持人开门时被排除,此时换选择会获得汽车。

    ② 如果一开始选择的是车门,则换选择不会获得汽车。

  由于这两种情况发生的概率是根据第一次选择的是羊门还是车门决定,选择到羊门的概率为2/3,选到车门的概率为1/3,所以获得汽车的概率为2/3。


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

答:

  ①设置a,b,c三个门,其中车在c门后。

  ②根据两种情况做两个循环,分别循环一千次计算千次选择中赢到车的次数的所占比率。

  ③运行结果中,若更换门选中车门的概率大致为66.6%,不更换门选中车门的概率大致为33.3%,则支持我的分析。

  ④运行结果为

    不进行更换选中有车的门的概率为0.659

    进行更换选中有车的门的概率为0.328

  ⑤运算结果支持我的分析。


4、请附上你的代码。(提示:使用编辑器中的插入代码功能,将代码显示为 Python 风格)

代码如下:

 1 import random
 2 a = 'goat'
 3 b = 'goat'
 4 c = 'car'   #假设a、b、c三个门,a、b为山羊门,c为车门。
 5 times1 = 0
 6 times2 = 0
 7 #不进行更换选中有车的门。
 8 for i in range(1,1000):     #重复试验一千次取概率。
 9     choice1 = random.choice([a,b,c])    #使用random函数在a、b、c三个变量中进行选择。
10     if choice1 == 'car':    #不进行更换,选到车门则记录一次。
11         times1 = times1 + 1
12 print('不进行更换选中有车的门的概率为{}'.format(times1/1000))
13 #进行更换选中有车的门。
14 for i in range(1,1000):     #重复试验一千次取概率。
15     choice2 = random.choice([a,b,c])  #在三个门中进行选择。
16 #可知如果选择为车门,更换之后必定为羊门;而先选羊门,之后排除另一个羊门后更换必定为车门。所以第一次选择到羊门就必定会换为车门,记录一次。
17     if choice2 == 'goat':     
18         times2 = times2 + 1
19 print('进行更换选中有车的门的概率为{}'.format(times2/1000))

 

标签:解羊,概率,问题,羊门,选择,车门,选中,更换
来源: https://www.cnblogs.com/yssuperyu/p/10732089.html