
计算思路是遍亩态碰历1到10共10个数的所有组合(用goNext函数),统计出组合总数count与7个数之和等于迅谈闭羡20的组数successNumber,这两个数的商successNumber/count就是所求的概率。
计算结果为:
总次数: 10000000, 成功次数: 26544, 概率: 0.0026544
程序可以如下实现:
#include <stdio.h>
int data[7]
int goNext()
{
int i
for ( i = 0i <7 &&++data[i] >10++i ) data[i] = 1
if ( i == 7 ) return 0
return 1
}
void main()
{
int i, m
double p
long count = 0, successNumber = 0
for ( i = 0i <7++i) data[i] = 1
do
{
++count
for ( i = 0, m = 0i <7++i ) m += data[i]
if ( 20 == m ) ++ successNumber
} while ( goNext() )
p = (double) successNumber / (double) count
printf("总次数: %d, 成功次数: %d, 概率: %.7lf\n", count, successNumber, p)
}
有,最方便的就是Excel,祥举它整合了大量的概谨御碧率公式,在公式“统计”里面找,有使用说明。比如阶乘:Fact(3)=3*2*1=6
组合:Combin(4,2)=6
排列:Permut(4,2)=12
还有拆空超几何分布概率公式等。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)