利用Python分析羊车门问题
题目描述:有3扇关闭的门,一扇门后面停着汽车,其余门后是山羊,只有主持人知道每扇门后面是什么。参赛者可以选择一扇门,在开启它之前,主持人会开启另外一扇门,露出门后的山羊,然后允许参赛者更换自己的选择。
1、按照你的第一感觉回答,你觉得不换选择能有更高的几率获得汽车,还是换选择能有更高的几率获得汽车?或几率没有发生变化?
答:换几率更高,在电影《决胜21点》中看过这个问题。
2、请自己认真分析一下“不换选择能有更高的几率获得汽车,还是换选择能有更高的几率获得汽车?或几率没有发生变化?” 写出你分析的思路和结果。
答:可以把这题当作一个概率问题,分析如下:
设三门后面分别为车,A羊,B羊。则第一次选门的时候,可以分为以下三种等概情况:
情况1:车 1/3
情况2:A羊 1/3
情况3:B羊 1/3
接下来,若不更换所选门:
情况1:得车
情况2:不得
情况3:不得
若更换所选门:
情况1:不得
情况2:得
情况3:得
显然,换的情况概率为2/3,高于不换的1/3。故换选择有更高的几率。
此外,还可以用一种我自认为容易理解的解释来说明我的答案:
在主持人打开羊门之后,剩下的门无非一扇车门,一扇羊门。若我们换门,那么必然会改变先前的结果。(车门变羊门,羊门变车门)。
于是可以认为,
先前选到车门的概率==更换后选到羊门的概率;
同理,
先前选到羊门的概率==更换后选到车门的概率;
也就是说,更换后选到车门的概率是2/3。而先前选到车门不换的概率是1/3。还是换选择概率更高。
注:和同学讨论过后,这里提一下我认为为什么答案不是1/2。
如果换与不换得车概率均为1/2。那么题目就变为:“主持人先打开一扇有羊的门,在剩下的两个门中你进行选择,求得车的概率。”
我认为关键的是:若你不更换门的话,主持人开门这一事件并不影响你选到的是车门的概率。
3. 请设法编写程序验证自己的想法,验证的结果支持了你的分析结果,还是没有支持你的分析结果,请写出程序运行结果,以及其是否支持你的分析。
答:基于上述分析,我认为其实根本不必模拟追踪门的过程。
方法如下:1).声名两个变量,man和car,分别代表你的初次选择和车门的位置。
再声名两个变量,换门获胜数与不换门获胜数,用于记录结果。
2).利用random库中的randint产生1~3范围内的随机数,对两个变量分别赋值。
3).若赋值后,car==man,则说明一开始选择的便是车门,
此时,不换的获胜数+1;
否则,意味着一开始选择的是羊门,则换的获胜数+1。
4).将上述过程重复足够大的基数,计算概率,验证结论。
实验结果如下:分别将过程重复1000遍,10000遍,十万遍,一百万遍。
重复基数越大,不换与换获胜的几率分别越接近于1/3与2/3。验证了之前的猜想。
4、请附上你的代码。
代码如下:
import random as r#总次数 total=1000000 #1000,1W,10W,100W #换与不换的获胜次数 win1=0 win2=0for i in range(total):#模拟选择过程man=r.randint(1,3)car=r.randint(1,3)#结果:一开始为车门,不换+1.# 否则则一开始为羊门,换+1.if man==car:win1+=1else:win2+=1print("在{}次实验中:".format(total)) print("若不更改门,获胜概率为{:.3}%.".format((win1/total)*100)) print("若更改门,获胜概率为{:.3}%.".format((win2/total)*100))
转载于:https://www.cnblogs.com/keelongz/p/10014889.html
利用Python分析羊车门问题相关推荐
- 数据分析作业(一)利用Python分析学生成绩
利用Python分析学生成绩 一.题目描述 二.解题步骤 运行环境 题目分析 三.完整代码 四.运行结果 五.参考文献 附录 附录A 更新记录 附录B 相关练习题目 练习一:读取Excel文件数据表分 ...
- 利用Python分析航空公司客户价值
利用Python分析航空公司客户价值 一.背景介绍 随着社会生活中数据量的急剧增多,如何从这些海量的数据中提取与发掘出对我们决策有用的信息成为当前亟待解决的题,因此,数据分析与挖掘技术在这些年得到 ...
- 利用Python分析《庆余年》人物图谱和微博传播路径
利用Python分析<庆余年>人物图谱和微博传播路径 庆余年电视剧终于在前两天上了,这两天赶紧爬取微博数据看一下它的表现. 庆余年 <庆余年>是作家猫腻的小说.这部从2007年 ...
- 利用Python分析文章词频,并生成词云图
利用Python分析文章词频,并生成词云图 使用request模块获取文章数据 import jieba import requests import csv from bs4 import Beau ...
- python单词软件哪个好_利用Python分析背单词软件的惊人真相
摘要:利用python分析背单词软件,揭秘你不知道的惊人真相 0×00 前言 你想知道背单词软件有大概多少人注册第一天都没有背完嘛 你想知道背单词软件这么火,这么多人在使用,真的有多少人真的在背诵嘛 ...
- python中“羊车门问题”的简单分析与代码实现
1."羊车门问题"题目及要求. 2.问题的数学逻辑分析. 3.python代码分析出换和不换的概率. "羊车门问题"题目及要求: 有三扇关着的门,一扇门后面停着 ...
- 利用python分析电商_Python实现爬取并分析电商评论
现如今各种APP.微信订阅号.微博.购物网站等网站都允许用户发表一些个人看法.意见.态度.评价.立场等信息.针对这些数据,我们可以利用情感分析技术对其进行分析,总结出大量的有价值信息.例如对商品评论的 ...
- ppt python 图表_利用python分析weibo数据做成图表放入PPT中
起因 很久以前,就有个想法,就是自动分析微博的数据,但是之前一直想的是网页版展示,flask想学了好久都没学,偶然的一次看到了一篇关于python处理pptx的文章,再加上同窗三年的室友在毕业后竟然主 ...
- Python解决羊车门问题
羊车门问题 实验要求 描述 有3扇关闭的门,一扇门后面停着汽车,其余门后是山羊,只有主持人知道每扇门后面是什么.参赛者可以选择一扇门,在开启它之前,主持人会开启另外一扇门,露出门后的山羊,然后允许参赛 ...
最新文章
- eDRX中的Paging
- 英特尔专家告诉你 信息时代如何掌控数据安全(附视频PPT)
- 推荐10款Windows系统必备的高效软件!!!
- Visual Studio 2010 Express for Windows Phone Key!
- redhat 6 配置 yum 源
- 干掉 Swagger,试试这个!
- sklearn机器学习常用过程总结
- threeJS 实用
- Makefile浅尝
- mysql show timestamp_MySQL中有关TIMESTAMP和DATETIME的总结
- 非科班程序员和科班程序员的差距到底在哪里?
- Java GUI社团管理系统课程设计
- 类型函数(type function)
- win安装android系统服务,win7系统安装安卓软件WindowsAndroid的方法
- 3dsmax动画十、父子关系。
- Mybatis解决查询返回Map类型时值为null的字段没有在Map结果集中的问题
- 利用python计算每个月有多少天和在两个日期中按月遍历
- Java二维码工具类(使用zxing实现,可支持logo)
- linux终端jar命令无法使用
- 单行文本溢出省略号,多行文本溢出省略号,多行文本折行(可用)
热门文章
- matlab实现prim算法,Prim算法和Kruskal算法的Matlab实现
- notepad++ json插件_Emmet--Web前端工具,需要安装插件在sublime里
- c++实验总结_高考化学选三简答题总结6——配位化合物、配位键、配位数
- 计算机初试占比高的学校,复试压力小,初试占比70%及以上的院校汇总!
- CTFshow web15
- 用 lastIndexOf()、substr()、split()方法截取一段字符串
- 【Unity Shaders】Mobile Shader Adjustment —— 为手机定制Shader
- Android 简介:Android SDK 和开发框架简介
- URL传递中文、Ajax传递中文,Java如何编码如何解决乱码
- “树人杯”辽宁科技大学第三届校园程序设计大赛