Как определить количество способов выбросить определенное число четырьмя игровыми костями?
Есть 4 игральных кости, какая вероятность того, что сумма всех выпавших чисел будет (для программы нужно выбрать свое число от 4 до 24) к примеру 14. По какой формуле программе легче будет это просчитать?
Ответы (1 шт):
Автор решения: Harry
→ Ссылка
Проще всего использовать рекуррентное соотношение - число способов получить сумму K из M костей равно
И так далее, до
, каковое равно 1 при
и 0 в противном случае.
int N(int L, int M)
{
int s = 0;
if (L == 1) return (1 <= M && M <= 6) ? 1 : 0;
for(int i = 1; i <= 6; ++i) s += N(L-1,M-i);
return s;
}
Ну, а вероятность получить сумму K равна
...
Можно, конечно, посмотреть сюда или использовать какую-нибудь аппроксимирующую формулу - но, как по мне, оно того не стоит.
