#define _CRT_SECURE_NO_WARNINGS #include <iostream>longdouble probability(unsigned numbers, unsigned picks);
int main()
{
usingnamespacestd;
double total1, choices1, total2, choices2;
cout << "Enter the total number of choices on the game card and the number of "
<<"picks allowed in section 1:\n";
while ((cin >> total1 >> choices1) && choices1 <= total1)
{
longdouble probability1 = probability(total1, choices1);
cout << "You have one chance in " << probability1 << " of winning in this section.\n";
longdouble probability2;
if ((cin >> total2 >> choices2) && choices2 <= total2)
{
probability2 = probability(total2, choices2);
cout << "You have one chance in " << probability2 << " of winning in this section.\n";
}
elsebreak;
cout << "So you have one chance in " << probability1*probability2 << " of winning.\n";
cout << "Next group(q to quit):";
}
cout << "Bye~!\n";
return0;
}
longdouble probability(unsigned numbers, unsigned picks)
{
longdouble results = 1.0;
longdouble n;
unsigned p;
for (n = numbers, p = picks; p > 0; n--, p--)
results = results*n / p;
return results;
}