概率论基础-泊松分布计算近似概率


为保证设备的正常运行,必须配备一定数量的设备维修人员,现有同类设备300台,且各台设备工作相互独立,任一时刻发生故障的概率都是0.01,假设一台设备的故障由一人进行修理,问至少应配备多少名修理人员,才能保证设备发生故障后能得到及时修理的概率不小于0.99?




当N大,p小时,可以用此公式,是近似的二项分布计算,相对的计算量会少一些。

当然,对于此题,精确计算应该是用二项分布,但是计算C(n,k)过大,会溢出。

下面的程序得出至少需要8名人员。


#include <iostream>
#include <math.h>
using namespace std;

int m[101] = {1,1};

int main() {
	int N = 300;
	double p = 0.01;
	double r = N * p;

	//计算阶乘, 预测结果不会太大,计算到50即可
	for(int i=2; i<=50; i++)
		m[i] = m[i-1] * i;

	double ke = exp(-r);

	double ans = 0;
	//使用泊松分布公式计算
	for(int i=0; i<300; i++){
		ans += ke * pow(r, i) / m[i];
		if(ans >= 0.99){
			cout << i<< endl;
			break;
		}
	}


	return 0;
}





评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值