如何用计算机计算概率,概率计算器与阶乘方程

我必须做一个代码,计算中奖彩票的概率,给定的数量可供选择的数量以及您必须选择多少。我必须在代码中使用阶乘方程(n!)/(k!*(n-k)!)。代码本身工作正常,但公式不会编译。概率计算器与阶乘方程

//This program calculates the probability of winning the lottery

#include

using namespace std;

double factorial(int n, int k);

int main()

{

//variables

int n;

int k;

char pa;

int chance;

double prob;

//loop

do

{

cout << "How many numbers (1-12) are there to pick from?\n" << endl;

cin >> n;

if(n>12 || n<1)

{

cout << "Invalid entry.\nHow many numbers (1-12) are there to pick from?\n";

cin >> n;

}

cout << "How many numbers must you pick to play?\n";

cin >> k;

if(k>n || k<1)

{

cout << "Invalid entry.\nHow many numbers must you pick to play?\n";

cin >> n;

}

cout << "Your chance of winning the lottery is 1 in " << chance << endl;

prob=factorial(n, k);

cout << "This is a probability of " << prob << endl;

cout << "Play again?";

cin >> pa;

} while (pa != 'n');

return 0;

}

double factorial(int n, int k)

{

double fact;

fact=(n!)/(k!*(n-k)!);

return fact;

}

+0

即使您的代码确实有效,您的函数“factorial”甚至不计算该因子。写一个计算n的函数阶乘!并在另一个函数内使用它来计算概率。你在'factorial'函数中的公式会计算一个二项式系数(如果编译的话) –

+0

非C代码...去除标签。 –

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值