FACT函数是求组合的函数。
例1、1至9中组成不包含重复数的9位数,有几种组合方式呢,可以用下列公式 =FACT(9)。
二、PERMUT求排列计算11选5的概率
例2,11选5共有多少种排列方式呢,一个公式就可以求出 =PERMUT(11,5)。
也可以用FACT函数求得这个结果,公式为=FACT(11)/FACT(11-5)。
三、COMBIN函数计算福彩双色球中头奖概率
福彩双色球当中有33个红球,16个蓝球,要在红球中选择6个,蓝球中选择1个,因此中头奖的概率用公式表示就是=1/COMBIN(33,6)/COMBIN(16,1)。
要在单元格中设置一下小数点的显示数。
四、结果就出来了。
五、那么要中头奖要花多少钱呢,用公式表示就是=COMBIN(33,6)*COMBIN(16,1)*2,结果需要花费35442176 元才能中头奖。
这是典型的古典概型,直接用穷举法计算即可。计算思路是遍历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)
}
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)