黑白球作业03

141 阅读1分钟

本文已参与「新人创作礼」活动,一起开启掘金创作之路。

题目

白球黑球作业03:袋中有a个黑球和b个白球,随机地每次从中取出一球,每次取后不放回,记事件A为“直到第k次才取到黑球”,其中1≤k≤b;事件B为“第7次取出的球恰好是黑球”,其中1≤k≤b。e (I)若a=5,b=3,k=2,求事件A发生的概率; (II)判断事件B发生的概率是否随k取值的变化而变化?并说明理由; (IIⅢ)比较a=5,b=9时事件A发生的概率与a=5,b=10时事件A发生的概率的大小,并说明理由。

【考点】条件概率与独立事件

image.png

解析

条件概率是指事件A在另外一个事件B已经发生条件下的发生概率。条件概率表示为:P(A|B),读作“在B的条件下A的概率”。 任何一个球都等可能的被在第i次被取到,于是第i次取哪个球(a+b种可能),第i次取黑球(a种可能),带古典概型公式得:第i次取得黑球概率是a/(a+b)。

代码

#include <stdio.h>
double C(int m, int n) {
	double ret = 1.0;
	for (int i = 1; i <= n; i++) {
		ret *= (double)i;
	}
	for (int i = 1; i <= m; i++) {
		ret /= (double)i;
	}
	for (int i = 1; i <= (n-m); i++) {
		ret /= (double)i;
	}
	return ret;
}
double A(int m, int n) {
	double ret = 1.0;
	for (int i = 1; i <= n; i++) {
		ret *= (double)i;
	}
	for (int i = 1; i <= (n - m); i++) {
		ret /= (double)i;
	}
	return ret;
}
int main() {
	int a, b, k;
	//第一题
	a = 5; b = 3; k = 2;
	double pa = C(1, 3) * C(1, 5) / A(2, 8);
	printf("第一题结果是:%f\r\n", pa);
	//第三题 第一问
	printf("第三题 第一问:\r\n");
	double pa1, pa2;
	for (k = 1; k <= 9; k++) {
		pa1 = 5 * A(k - 1, 9) / A(k, 14);
		pa2= 5 * A(k - 1, 10) / A(k, 15);
		if (pa1 > pa2) {
			printf("当k = %d 时,pa1 > pa2\r\n",k);
		}
		else
		{
			printf("当k = %d 时,pa1 < pa2\r\n",k);
		}
	}
	return 0;
}

运行结果

请添加图片描述