三门问题

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

作业要求如下,需在博文中回答如下问题,回答问题时,先复制题目,然后再换行书写答案:

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

答:没有变化


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

答:选手没换选中概率就是1/3;

如果换的话:

原来选的车,主持人排除换成羊1,换成羊2;

原来选的车,主持人排除换成羊2,换成羊1;

原来选的羊1,主持人排除羊2,换成车;

原来选的羊2,主持人排除羊1,换成车;

由全概率公式,换了选中概率为1/3*1/2*0+1/3*1+1/3*1=2/3;

更改决策,几率更高。

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

答:支持,用random库的choice函数,问题转变为庶民在1,2,3中猜上帝的数;

    第一段代码,输入10000,返回0.327;

    第二段代码,输入10000,返回0.6753。

1 t = 0
2 import random as r
3 n = eval(input())
4 for i in range(n):
5     human = r.choice([1,2,3])
6     god = r.choice([1,2,3])
7     if human == god:
8         t=t+1
9 print(t/n)
t = 0
import random as r
n = eval(input())
for i in range(n):
    C = [1,2,3]
    human = r.choice(C)
    god = r.choice(C)
    if human == god:
        pass
    else:
        t=t+1
print(t/n)

 

posted @ 2018-11-28 11:45  赵恒启  阅读(277)  评论(0编辑  收藏  举报