c++ 计算彩票中奖概率
操作方法:
输入两个数字,第一个数字是备选总数,第二个数字是选择总数,然后返回中将概率。
可以投注多次,结束的时候返回总的中将概率。
#include <iostream> using namespace std; long double probability(unsigned numbers, unsigned picks); int main() { double total, choices, totalProbability=1, v_probability; cout << "Enter the total number of choices on the game card and\n" "the number of picks allowed:\n"; while ((cin >> total >> choices) && choices <= total) { v_probability = probability(total, choices); cout << "Your chance " << v_probability << " of winning.\n"; totalProbability *= v_probability; cout << "Next two numbers (q to quit): "; } cout << "Your total chance " << totalProbability << " of winning.\n"; cout << "bye\n"; return 0; } long double probability(unsigned numbers, unsigned picks) { long double result = 1.0; long double n; unsigned p; for (n = numbers, p = picks; p > 0; n--, p--) result = result * n / p; return result; }