早教吧 育儿知识 作业答案 考试题库 百科 知识分享

某个袋子中有红球m个,白球n个.现在要从中取出x个球.那么红球数目多于白球的概率是多少呢?请问你给的答案的数学原理是什么呢,概率为什么那么求啊,

题目详情
某个袋子中有红球m个,白球n个.现在要从中取出x个球.那么红球数目多于白球的概率是多少呢?
请问你给的答案的数学原理是什么呢,概率为什么那么求啊,
▼优质解答
答案和解析
c语言实现:下面的代码解决了这个问题.其中的y表示红球至少出现的次数.
这与前文的问题是等价的.因为如果取30个球,要求红球数大于白球数,则等价于至少取出16个红球.请根据仅存的线索,判断程序逻辑,并补全缺少的代码.
/*
m: 袋中红球的数目
n: 袋中白球的数目
x: 需要取出的数目
y: 红球至少出现的次数
*/
double pro(int m, int n, int x, int y)
{
if(y>x) return 0;
if(y==0) return 1;
if(y>m) return 0;
if(x-n>y) return 1;
double p1 = ____p1=pro(m-1,n,x-1,y-1);____
double p2 = ____p2=pro(m,n-1,x-1,y);____
return (double)m/(m+n) * p1 + (double)n/(m+n) * p2;
}
其实:我利用了递归的思想.
假设第一次我摸到1个红球,那么以后我至少需要摸出x-1个球(红球至少出现y-1次),而白球依然不变是n个.
但是如果我这次摸到的是白球,那么以后我至少还需摸出y个红球才能保证最终红球多于白球,其他同上.
下面就是终止条件:
if(y>x) return 0;应该没问题吧,如果要求红球比摸出的所有球都多,怎么可能!所以没有这种情况,返回0;
if(y==0) return 1;判断还需摸出0个红球,满足条件,返回1;
if(y>m) return 0;这也没问题!
if(x-n>y) return 1;即使所有白球都被摸到,但还需摸出x-n个球(>y),只能全是红球.满足.
最难懂的就是结尾:return (double)m/(m+n) * p1 + (double)n/(m+n) * p2;
这是函数返回给调用函数的值,利用了分步相乘的思想:左边表示此次抽到红球的概率*以后满足条件的概率;右边表示P(此次抽到白球)*P(以后满足条件);这种递归直到算到最后直接用到判断条件为止.
看了 某个袋子中有红球m个,白球n...的网友还看了以下:

甲袋中有大小相同的三个白球和四个红球,乙袋中有大小相同的四个白球个四个红球,甲袋中有大小相同的三个  2020-04-27 …

现有黑白红三种球共125个,如果白球个数:红球个数=5:6,红球个数:黑球个数=4:1,那么每种球  2020-05-16 …

盒中有红、白两种颜色的小球共50个,现从中取出若干个球.在取出的球中白球个数是红球个数的6倍,在盒  2020-05-20 …

一道数学难题,袋子里红球与白球个数之比是19:13,放入若干只红球之后红球与白球数量之比是5:3,  2020-06-10 …

在一个密闭不透明的袋子里有若干个白球.为估计白球个数,小何向其中投入8个黑球,搅拌均匀后随机摸出一  2020-07-08 …

盒子里有三种颜色的球,黄球个数与红球个数的比是2:3,红球个数与白球个数的比是4:5.已知三种颜色  2020-07-18 …

1、盒子里有三种颜色的球,黄球个数与红球个数的比是3:(比)4,红球个数与白球个数的比是4:5.已  2020-07-18 …

盒子里有三种颜色的球黄球个数与白球个数的比是2:3红球与白球个数的比是4:5已知三种颜色的球共有1  2020-07-18 …

有ABC三个盒子里装着黑白两种球,三个盒子中所装球的数量相等,A盒子里的白球和B盒子的黑球相等,C盒  2020-12-17 …

现有甲乙两个盒子,甲有个4白球和4红球,乙有个3白球,和若干红球,若从乙中任意取两个,取同色球的概率  2021-01-09 …