Как найти количество событий игральные кости

Решение задач о бросании игральных костей

найти вероятность, что при бросании игральных костей

Еще одна популярная задача теории вероятностей (наравне с задачей о подбрасывании монет) — задача о подбрасывании игральных костей.

Обычно задача звучит так: бросается одна или несколько игральных костей (обычно 2, реже 3). Необходимо найти вероятность того, что число очков равно 4, или сумма очков равна 10, или произведение числа очков делится на 2, или числа очков отличаются на 3 и так далее.

Основной метод решения подобных задач — использование формулы классической вероятности, который мы и разберем на примерах ниже.

Ознакомившись с методами решения, вы сможете скачать супер-полезный Excel-файл для расчета вероятности при бросании 2 игральных костей (с таблицами и примерами).

Нужна помощь? Решаем теорию вероятностей на отлично

Спасибо за ваши закладки и рекомендации

Одна игральная кость

С одной игральной костью дело обстоит до неприличия просто. Напомню, что вероятность находится по формуле $P=m/n$, где $n$ — число всех равновозможных элементарных исходов эксперимента с подбрасыванием кубика или кости, а $m$ — число тех исходов, которые благоприятствуют событию.

Пример 1. Игральная кость брошена один раз. Какова вероятность, что выпало четное число очков?

Так как игральная кость представляет собой кубик (еще говорят, правильная игральная кость, то есть кубик сбалансированный, так что выпадает на все грани с одинаковой вероятностью), граней у кубика 6 (с числом очков от 1 до 6, обычно обозначаемых точкам), то и общее число исходов в задаче $n=6$. Благоприятствуют событию только такие исходы, когда выпадет грань с 2, 4 или 6 очками (только четные), таких граней $m=3$. Тогда искомая вероятность равна $P=3/6=1/2=0.5$.

Пример 2. Брошен игральный кубик. Найти вероятность выпадения не менее 5 очков.

Рассуждаем также, как и в предыдущем примере. Общее число равновозможных исходов при бросании игрального кубика $n=6$, а условию «выпало не менее 5 очков», то есть «выпало или 5, или 6 очков» удовлетворяют 2 исхода, $m=2$. Нужная вероятность равна $P=2/6=1/3=0.333$.

Даже не вижу смысла приводить еще примеры, переходим к двум игральным костям, где все интереснее и сложнее.

Две игральные кости

Когда речь идет о задачах с бросанием 2 костей, очень удобно использовать таблицу выпадения очков. По горизонтали отложим число очков, которое выпало на первой кости, по вертикали — число очков, выпавшее на второй кости. Получим такую заготовку (обычно я делаю ее в Excel, файл вы сможете скачать ниже):

таблица очков при бросании 2 игральных костей

А что же в ячейках таблицы, спросите вы? А это зависит от того, какую задачу мы будем решать. Будет задача про сумму очков — запишем туда сумму, про разность — запишем разность и так далее. Приступаем?

Пример 3. Одновременно бросают 2 игральные кости. Найти вероятность того, что в сумме выпадет менее 5 очков.

Сначала разберемся с общим числом исходов эксперимента. когда мы бросали одну кость, все было очевидно, 6 граней — 6 исходов. Здесь костей уже две, поэтому исходы можно представлять как упорядоченные пары чисел вида $(x,y)$, где $x$ — сколько очков выпало на первой кости (от 1 до 6), $y$ — сколько очков выпало на второй кости (от 1 до 6). Очевидно, что всего таких пар чисел будет $n=6cdot 6=36$ (и им соответствуют как раз 36 ячеек в таблице исходов).

Вот и пришло время заполнять таблицу. В каждую ячейку занесем сумму числа очков выпавших на первой и второй кости и получим уже вот такую картину:

таблица суммы очков при бросании 2 игральных костей

Теперь эта таблица поможем нам найти число благоприятствующих событию «в сумме выпадет менее 5 очков» исходов. Для этого подсчитаем число ячеек, в которых значение суммы будет меньше 5 (то есть 2, 3 или 4). Для наглядности закрасим эти ячейки, их будет $m=6$:

таблица суммы очков менее 5 при бросании 2 игральных костей

Тогда вероятность равна: $P=6/36=1/6$.

Пример 4. Брошены две игральные кости. Найти вероятность того, что произведение числа очков делится на 3.

Составляем таблицу произведений очков, выпавших на первой и второй кости. Сразу выделяем в ней те числа, которые кратны 3:

таблица произведения очков при бросании 2 игральных костей

Остается только записать, что общее число исходов $n=36$ (см. предыдущий пример, рассуждения такие же), а число благоприятствующих исходов (число закрашенных ячеек в таблице выше) $m=20$. Тогда вероятность события будет равной $P=20/36=5/9$.

Как видно, и этот тип задач при должной подготовке (разобрать еще пару тройку задач) решается быстро и просто. Сделаем для разнообразия еще одну задачу с другой таблицей (все таблицы можно будет скачать внизу страницы).

Пример 5. Игральную кость бросают дважды. Найти вероятность того, что разность числа очков на первой и второй кости будет от 2 до 5.

Запишем таблицу разностей очков, выделим в ней ячейки, в которых значение разности будет между 2 и 5:

таблица разности очков при бросании 2 игральных костей

Итак, что общее число равновозможных элементарных исходов $n=36$, а число благоприятствующих исходов (число закрашенных ячеек в таблице выше) $m=10$. Тогда вероятность события будет равной $P=10/36=5/18$.

Итак, в случае, когда речь идет о бросании 2 костей и простом событии, нужно построить таблицу, выделить в ней нужные ячейки и поделить их число на 36, это и будет вероятностью. Помимо задач на сумму, произведение и разность числа очков, также встречаются задачи на модуль разности, наименьшее и наибольшее выпавшее число очков (подходящие таблицы вы найдете в файле Excel).

Другие задачи про кости и кубики

Конечно, разобранными выше двумя классами задач про бросание костей дело не ограничивается (просто это наиболее часто встречаемые в задачниках и методичках), существуют и другие. Для разнообразия и понимания примерного способа решения разберем еще три типовых примера: на бросание 3 игральных костей, на условную вероятность и на формулу Бернулли.

Пример 6. Бросают 3 игральные кости. Найдите вероятность того, что в сумме выпало 15 очков.

В случае с 3 игральными костями таблицы составляют уже реже, так как их нужно будет аж 6 штук (а не одна, как выше), обходятся простым перебором нужных комбинаций.

Найдем общее число исходов эксперимента. Исходы можно представлять как упорядоченные тройки чисел вида $(x,y,z)$, где $x$ — сколько очков выпало на первой кости (от 1 до 6), $y$ — сколько очков выпало на второй кости (от 1 до 6), $z$ — сколько очков выпало на третьей кости (от 1 до 6). Очевидно, что всего таких троек чисел будет $n=6cdot 6cdot 6=216$ .

Теперь подберем такие исходы, которые дают в сумме 15 очков.

$$
(3,6,6), (6,3,6), (6,6,3),\
(4,5,6), (4,6,5), (5,4,6), (6,5,4), (5,6,4), (6,4,5),\
(5,5,5).
$$

Получили $m=3+6+1=10$ исходов. Искомая вероятность $P=10/216=0.046$.

Пример 7. Бросают 2 игральные кости. Найти вероятность того, что на первой кости выпало не более 4 очков, при условии, что сумма очков четная.

Наиболее простой способ решения этой задачи — снова воспользоваться таблицей (все будет наглядно), как и ранее. Выписываем таблицу сумм очков и выделяем только ячейки с четными значениями:

таблица сумм очков (четные) при бросании 2 игральных костей

Получаем, что согласно условию эксперимента, всего есть не 36, а $n=18$ исходов (когда сумма очков четная).

Теперь из этих ячееек выберем только те, которые соответствуют событию «на первой кости выпало не более 4 очков» — то есть фактически ячейки в первых 4 строках таблицы (выделены оранжевым), их будет $m=12$.

таблица сумм очков (четные, х до 4) при бросании 2 игральных костей

Искомая вероятность $P=12/18=2/3.$

Эту же задачу можно решить по-другому, используя формулу условной вероятности. Введем события:
А = Сумма числа очков четная
В = На первой кости выпало не более 4 очков
АВ = Сумма числа очков четная и на первой кости выпало не более 4 очков
Тогда формула для искомой вероятности имеет вид:
$$
P(B|A)=frac{P(AB)}{P(A)}.
$$
Находим вероятности. Общее число исходов $n=36$, для события А число благоприятствующих исходов (см. таблицы выше) $m(A)=18$, а для события АВ — $m(AB)=12$. Получаем:
$$
P(A)=frac{m(A)}{n}=frac{18}{36}=frac{1}{2}; quad P(AB)=frac{m(AB)}{n}=frac{12}{36}=frac{1}{3};\
P(B|A)=frac{P(AB)}{P(A)}=frac{1/3}{1/2}=frac{2}{3}.
$$
Ответы совпали.

Пример 8. Игральный кубик брошен 4 раза. Найти вероятность того, что четное число очков выпадет ровно 3 раза.

В случае, когда игральный кубик бросается несколько раз, а речь в событии идет не о сумме, произведении и т.п. интегральных характеристиках, а лишь о количестве выпадений определенного типа, можно для вычисления вероятности использовать формулу Бернулли.

Итак, имеем $n=4$ независимых испытания (броски кубика), вероятность выпадения четного числа очков в одном испытании (при одном броске кубика) равна $p=3/6=1/2=0.5$ (см. выше задачи для одной игральной кости).

Тогда по формуле Бернулли $P=P_n(k)=C_n^k cdot p^k cdot (1-p)^{n-k}$, подставляя $k=3$, найдем вероятность того, что четное число очков появится 3 раза:
$$
P_4(3)=C_4^3 cdot left(1/2right)^3 cdot left(1-1/2right)^1=4 cdot left(1/2right)^4=1/4=0,25.
$$

Приведем еще пример, решаемый аналогичным образом.

Пример 9. Игральную кость бросают 8 раз. Найти вероятность того, что шестёрка появится хотя бы один раз.

Подставляем в формулу Бернулли следующие значения: $n=8$ (число бросков), $p=1/6$ (вероятность появления 6 при одном броске), $kge 1$ (хотя бы один раз появится шестерка). Прежде чем вычислять эту вероятность, напомню, что практически все задачи с формулировкой «хотя бы один…» удобно решать, переходя к противоположному событию «ни одного…». В нашем примере сначала стоит найти вероятность события «Шестёрка не появится ни разу», то есть $k=0$:
$$
P_8(0)=C_8^0 cdot left(1/6right)^0 cdot left(1-1/6right)^8=left(5/6right)^8.
$$
Тогда искомая вероятность будет равна
$$
P_8(kge 1)=1-P_8(0)=1-left(5/6right)^8=0.767.
$$

А еще у нас есть онлайн калькулятор для формулы Бернулли

Полезные ссылки

таблица очков при бросании игральных костей

Для наглядного и удобного расчета вероятностей в случае бросания двух игральных костей я сделала
Файл с таблицами для расчета вероятности.

В нем приведены таблицы суммы, произведения, разности, минимума, максимума, модуля разности числа очков.

Вводя число благоприятствующих исходов в специальную ячейку вы получите рассчитанную вероятность (в обычных и десятичных дробях). Файл открывается программой Excel.

Еще по теории вероятностей:

  • Онлайн калькуляторы
  • Онлайн учебник
  • Более 200 примеров
  • Решенные контрольные
  • Формулы и таблицы
  • Сдача тестов
  • Решение на заказ
  • Онлайн помощь

Спасибо за ваши закладки и рекомендации

В решебнике вы найдете более 400 задач о бросании игральных костей и кубиков с полными решениями (вводите часть текста для поиска своей задачи):

Probability is also known as a possibility, which works in the happening of a likely event. The utility is designated from zero to one. In math, Probability has been obvious to approximate how possible events are to occur. Basically, the probability is the scope to which something is to be expected to take place.

Probability

To understand probability more exactly, let’s understand an example of flipping a coin, the possible outcomes are – head and tail. The possibility of happening any of the likely events is 1/2. As the possibility of occurring any of the likely events is the same so there is an equal possibility of happening any favorable affair, in this case, it is 1/2.

Formula of Probability

P(A) = {Number of affair A} ⁄ {Total number of affair}

DICE

Dice is a small block that has between one and six mark or tint on its boundary and is used in games to give a randomly integer. Dice are small, tossable blocks with a detectable boundary that can stop in respective figures. They are handed down to give stand-up to respective figures, often as part of sideboard games, as well as dice games, board games, role-playing games, and games of chance.

A usual die is a block with each of its six sides detectable with a different integers of figures from one to six. When throwable or rolled, the die comes to pause shows a random number from one to six on its higher side, with the happening of each affair being equally likely. Dice may also have concave or unequal shapes and may have faces noticeable with figures or characters instead of the pit. Filled dice are drawn to favour some results over others for break out or relaxation.

How to calculate Dice Probabilities?

Answer:

  • One Dice Rolls

The uncomplicated and easiest case of dice probabilities is the possibility of occurring a specific integer with one dice. In probability, the primary act is that one must compute it by looking at the number of likely events in collation to the desired events.

Dice presents six likely events. Furthermore, the attentiveness of the independent would be only for one affair disregarding of the choice of integer. A dice probability calculator would be totally convenient in this regard.

The formula one may use in this case is,

P(A) = {Number of affair to A} ⁄ {Total number of affair}

Therefore, the odds of getting a specific number, if the number is 6, this gives,

Probability = 1 ÷ 6 = 0.167

Probabilities are accessible as numbers between no possibility and reliability. Furthermore, no possibility resembles 0 and reliability resembles 1. An independent can multiply this by 100 to operate a percentage. As a consequence, the possibility of getting 6 on the dice is 16.7%.

  • Two or More Dice

The probabilities definitely get a little more complex to work out when two dice are concerned. The calculation of uncommon probabilities takes place when one wish to know the probability of getting two 6s by throwing two dice. Most remarkable, the result of one dice does not rely upon on the result of the other dice.

Unconventional probabilities have the rule that one must multiply the individual probabilities jointly to attain the outcome. Therefore, the formula for this is,

Probability of both = Probability of result one × Probability of result two

  • Total Score from Two or More Dice

If an individual wants to know the likelihood of getting a particular total sore by rolling two or more dice, then one must go back to the simple rule.

This simple rule is probability = number of likely result divided by the number of likely results. Again, the use of a dice probability calculator is critical here. Calculating the number of result one is concerned in requires more work. If an individualistic wish a total score of 4 on two dice, then this is attainable by rolling 1 and 3, 3 and 1, or 2 and 2.

Furthermore, the individual must observe the dice individually, 1 on first dice and 3 on other dice is surely different than a 3 on first dice and 1 on the second dice. For rolling a 4, there are three ways to get the result one wishes. Hence, there are 36 likely result. The work out of this is as follows,

Probability = Number of desired outcomes/Number of possible outcomes = 3 ÷ 36 = 0.0833.

The proportion comes out to be 8.33 percent. Also, 7 is the most favourable  outcome for two dice. In addition, there are six ways to attain it. The probability in this case is 6 ÷ 36 = 0.167 = 16.7%.

Similar Problems

Question 1: Find the probability of retrieving a sum of 8 on throwing two dice?

Answer:

There are 36 total likely results on throwing two dice i.e., 6² = 6 × 6 = 36.

There are 5 total possibility of retrieving a sum of 8 on throwing two dice i.e., (2, 6), (3, 5), (4, 4), (5, 2), (6, 2).

Hence, the probability of retrieve a sum of 8 on throwing two dice is 5/36.

Question 2: Shawn tosses a die 400 times and he documents the score of getting 6 as 30 times. What could be the probability of

a) retrieving a score of 6?

b) retrieving a score under 6?

Solution:

a) P (getting a score of 6)  

= Number of times getting 6/total times

= 30/400

= 3/40

b) P (getting a score under 6)

= number of times getting under 6/total times

= 370/400

= 37/40

a) P (getting 5) = 3/40

b) P (getting under 6) = 37/40

Question 3: What is the probability of retrieving a sum of 6 if two dice are thrown?

Solution:

When two dice are rolled, n(S) = 36. Let, A be the event of getting a sum of 6. Then,

A = {(3, 3), (2, 4), (4, 2), (1, 5), (5, 1)}

n(A) = 5

Hence, the required probability will be,

P(A) = n(A)/n(S) = 5/36.

Question 4: Find the probability of throwing two dice and retrieving a sum of 4.

Solution:

The set of possible outcomes when we roll a die are {1, 2, 3, 4, 5, 6}

So, when two dice are rolled, there are 6 × 6 = 36 chances.

When we roll two dice, the probability of retrieving number 4 is (1, 3), (2, 2), and (3, 1).

So, the number of favorable outcomes = 3

Total number of possibilities = 36

Probability = {Number of likely affair } ⁄ {Total number of affair} = 3 / 36 = 1/12.

Thus, 1/12 is the probability of rolling two dice and retrieving a sum of 4.

Last Updated :
12 May, 2022

Like Article

Save Article

Время на прочтение
10 мин

Количество просмотров 14K

Введение

На одном из собеседований по приёму на работу попросили за 30 минут написать программу, которая бы решал следующую задачу:

Есть n стандартных игральных костей (6-ти гранных кубиков) со стандартным обозначением всех граней от 1 до 6. Бросаем все n кубики разом. Нужно найти вероятность выпадения числа k, а именно суммы всех значений, выпавших на этих кубиках.

Решение

Не буду томить ожиданием и сразу выложу код алгоритма, который получился и впоследствии был немного обработан напильником.

Python

# -*- coding: utf-8 -*-
# import numpy  # <можно_использовать_numpy>

def main():
    c_int_side_dice: int = 6  # сколько граней у кубика
    c_int_dice_number: int = 6  # кол-во кубиков
    c_int_number_to_find: int = 18  # число, вероятность выпадения которого хотим найти
    probability = dice_probability(c_int_dice_number, c_int_number_to_find, c_int_side_dice)
    print(probability)


# собственно поиск вероятности определённого значения
def dice_probability(int_dice_number: int, int_number_to_find: int, c_int_side_dice: int) -> float:
    list_values, list_interm_probability = list_values_and_interm_probabilities(int_dice_number, c_int_side_dice)
    if int_number_to_find < list_values[0] or int_number_to_find > list_values[-1]:
        # задаваемое число выходит за рамки реально возможного диапазона значений
        result_out: float = 0.0
    else:
        for i in range(len(list_values)):
            if list_values[i] == int_number_to_find:
                result_out: float = list_interm_probability[i] / (c_int_side_dice ** int_dice_number)
                break
    return result_out


# возвращает списки/массивы: значения (сумма выпавших всех значений кубиков), сколько раз встречается значение
def list_values_and_interm_probabilities(int_dice_number: int, c_int_side_dice: int) -> tuple[list[int], list[int]]:  # [кол-во кубиков], [сколько граней у кубика]
    list_values = [i for i in range(int_dice_number, c_int_side_dice * int_dice_number + 1)]  # <длина_списков_совпадает!>
    list_interm_probability = [1] * c_int_side_dice  # [1, 1, 1, 1, 1, 1]
    for i in range(int_dice_number - 1):
        list_interm_probability = multiply_by_ones(list_interm_probability, c_int_side_dice) # <длина_списков_совпадает!>
        # list_interm_probability = numpy.convolve(list_interm_probability, [1] * c_int_side_dice)  # <можно_использовать_numpy> и не использовать multiply_by_ones()

    return list_values, list_interm_probability


# "умножение" на единицы
def multiply_by_ones(list_in: list[int], c_int_side_dice: int) -> list[int]:  # [1, 1, 1, 1, 1, 1], 6
    list_dummy: list[list[int]] = []
    for i in range(c_int_side_dice):
        list_dummy.append([0] * i)  # [], [0], [0, 0], [0, 0, 0] ...

    list_for_sum: list[list[int]] = []
    for i in range(c_int_side_dice):
        list_for_sum.append(list_dummy[i] + list_in + list_dummy[c_int_side_dice - i - 1])

    """
    [list_in, 0, 0, 0, 0, 0]
    [0, list_in, 0, 0, 0, 0]
    [0, 0, list_in, 0, 0, 0]
    [0, 0, 0, list_in, 0, 0]
    [0, 0, 0, 0, list_in, 0]
    [0, 0, 0, 0, 0, list_in]
    """

    list_out: list[int] = []
    for i in range(len(list_for_sum[0])):
        sum_out: int = 0
        for j in range(c_int_side_dice):
            sum_out += list_for_sum[j][i]
        list_out.append(sum_out)

    """
    [1, 2, 3, 4, 5, 6, 5, 4, 3, 2, 1]
    """
    return list_out

if __name__ == "__main__":
    main()

JavaScript

function main(){
    const c_int_side_dice = 6;  // сколько граней у кубика
    const c_int_dice_number = 6; // кол-во кубиков
    const c_int_number_to_find = 18; // число, вероятность выпадения которого хотим найти
    let probability = dice_probability(c_int_dice_number, c_int_number_to_find, c_int_side_dice);
    console.log(probability);
}

// собственно поиск вероятности определённого значения
function dice_probability(int_dice_number, int_number_to_find, c_int_side_dice){
    let lists_val_and_prob = list_values_and_interm_probabilities(int_dice_number, c_int_side_dice);
    let result_out;
    if (int_number_to_find < lists_val_and_prob[0][0] || int_number_to_find > lists_val_and_prob[0][lists_val_and_prob[0].length - 1]){
        // задаваемое число выходит за рамки реально возможного диапазона значений
        result_out = 0.0;
    } else {
        for (let i = 0; i < lists_val_and_prob[0].length; i++){
            if (lists_val_and_prob[0][i] == int_number_to_find){
                result_out = lists_val_and_prob[1][i] / Math.pow(c_int_side_dice, int_dice_number);
                break;
            }
        }
    }
    return result_out;
}

// возвращает списки/массивы: значения (сумма выпавших всех значений кубиков), сколько раз встречается значение
function list_values_and_interm_probabilities(int_dice_number, c_int_side_dice){  // [кол-во кубиков], [сколько граней у кубика]
    let list_values = new Array();
    let i = 0;
    for (let j = int_dice_number; j <= c_int_side_dice * int_dice_number; j++){
        list_values[i] = j;
        i++;
    }
    console.log(list_values);
    let list_interm_probability = Array(c_int_side_dice).fill(1);  // [1, 1, 1, 1, 1, 1]
    for (let i = 0; i < int_dice_number - 1; i++){
        list_interm_probability = multiply_by_ones(list_interm_probability, c_int_side_dice);
    }
    console.log(list_interm_probability);
    return [list_values, list_interm_probability];
}

// "умножение" на единицы
function multiply_by_ones(list_in, c_int_side_dice){
    let list_dummy = new Array(c_int_side_dice);
    for (let j = 0; j < c_int_side_dice; j++){
        list_dummy[j] = Array(j).fill(0);
    }
    let list_for_sum = new Array(c_int_side_dice);
    for (let j = 0; j < c_int_side_dice; j++){
        list_for_sum[j] = list_dummy[j].concat(list_in, list_dummy[c_int_side_dice - j - 1]);
    }
    // [list_in, 0, 0, 0, 0, 0]
    // [0, list_in, 0, 0, 0, 0]
    // [0, 0, list_in, 0, 0, 0]
    // [0, 0, 0, list_in, 0, 0]
    // [0, 0, 0, 0, list_in, 0]
    // [0, 0, 0, 0, 0, list_in]
    
    let list_out = new Array();
    for (let i = 0; i < list_for_sum[0].length; i++){
        let sum_out = 0;
        for (let j = 0; j < c_int_side_dice; j++){
            sum_out += list_for_sum[j][i];
        }
        list_out[i] = sum_out;
    }
    // [1, 2, 3, 4, 5, 6, 5, 4, 3, 2, 1]
    return list_out;
}

main();

VBScript

Option Explicit

Sub main()
    Const c_int_side_dice = 6  'сколько граней у кубика
    Const c_int_dice_number = 3  'кол-во кубиков
    Const c_int_number_to_find = 10  'число, вероятность выпадения которого хотим найти
    Dim probability
    probability = dice_probability(c_int_dice_number, c_int_number_to_find, c_int_side_dice)
    MsgBox probability
End Sub


'собственно поиск вероятности определённого значения
Function dice_probability(int_dice_number, int_number_to_find, c_int_side_dice)
    Dim list_values()
    Dim list_interm_probability()
    list_values_and_interm_probabilities int_dice_number, c_int_side_dice, list_values, list_interm_probability
    Dim result_out
    Dim i
    If int_number_to_find < list_values(0) Or int_number_to_find > list_values(UBound(list_values)) Then
        'задаваемое число выходит за рамки реально возможного диапазона значений
        result_out = 0.0
    Else
        For i = 0 To UBound(list_values)
            If list_values(i) = int_number_to_find Then
                result_out = list_interm_probability(i) / (c_int_side_dice ^ int_dice_number)
            End If
        Next
    End If
    dice_probability = result_out
End Function

'возвращает списки/массивы: значения (сумма выпавших всех значений кубиков), сколько раз встречается значение
Sub list_values_and_interm_probabilities(int_dice_number, c_int_side_dice, list_values, list_interm_probability)  '[кол-во кубиков], [сколько граней у кубика]
    ReDim list_values(int_dice_number * (c_int_side_dice - 1))
    Dim i, j
    i = 0
    For j = int_dice_number To c_int_side_dice * int_dice_number
        list_values(i) = j
        i = i + 1
    Next
    ReDim list_interm_probability(c_int_side_dice - 1)
    For j = 0 To c_int_side_dice - 1
        list_interm_probability(j) = 1
    Next
    For j = 0 To int_dice_number - 2
        multiply_by_ones list_interm_probability, c_int_side_dice
    Next
End Sub

'"умножение" на единицы
Sub multiply_by_ones(list_in, c_int_side_dice)
    Dim list_in_length
    list_in_length = UBound(list_in)
    Dim list_for_sum()
    ReDim list_for_sum(c_int_side_dice - 1, list_in_length + c_int_side_dice - 1)
    Dim i, j, k, n
    For i = 0 To c_int_side_dice - 1
        j = 0
        For n = 0 To c_int_side_dice - 1
            If i = n Then
                For k = 0 To list_in_length
                    list_for_sum(i, j) = list_in(k)
                    j = j + 1
                Next
            Else
                list_for_sum(i, j) = 0
                j = j + 1
            End If
        Next
    Next
    ' [list_in, 0, 0, 0, 0, 0]
    ' [0, list_in, 0, 0, 0, 0]
    ' [0, 0, list_in, 0, 0, 0]
    ' [0, 0, 0, list_in, 0, 0]
    ' [0, 0, 0, 0, list_in, 0]
    ' [0, 0, 0, 0, 0, list_in]
    ' ArrOut_2 list_for_sum
    Erase list_in
    ReDim list_in(list_in_length + c_int_side_dice - 1)
    Dim sum_out
    For j = 0 To list_in_length + c_int_side_dice - 1
        sum_out = 0
        For i = 0 To c_int_side_dice - 1
            sum_out = sum_out + list_for_sum(i, j)
        Next
        list_in(j) = sum_out
    Next
    ' [1, 2, 3, 4, 5, 6, 5, 4, 3, 2, 1]
    ' ArrOut_1 list_in
End Sub

'==================================================
'<Additional_MsgBox_For_Arrays>
Sub ArrOut_1(arr_in)
    Dim str_out
    Dim i
    For i = 0 To UBound(arr_in)
        If i = 0 Then
            str_out = arr_in(i)
        Else
            str_out = str_out & " " & arr_in(i)
        End If
    Next
    MsgBox str_out
End Sub

Sub ArrOut_2(arr_in)
    Dim str_out
    Dim i, j
    For i = 0 To UBound(arr_in, 1)
        For j = 0 To UBound(arr_in, 2)
            If i = 0 And j = 0 Then
                str_out = arr_in(i, j)
            ElseIf j = 0 Then
                str_out = str_out & vbNewLine & arr_in(i, j)
            Else
                str_out = str_out & " " & arr_in(i, j)
            End If
        Next
    Next
    MsgBox str_out
End Sub
'</Additional_MsgBox_For_Arrays>
'==================================================

main

Пояснение

Понятно, что копание в чужом коде — дело не благодарное, опишу работу алгоритма для одного конкретного примера.

Картинку можно описать словами как: нахождение делимого вероятности выпадения при помощи многократной свёртки последовательности [1 1 1 1 1 1] на саму себя. Количество операций свёртки совпадает с количеством кубиков минус 1.

Смею предположить, что дочитав до этого момента у многих читателей уже зародятся скептические настроения, однако в свою очередь предложу поверить самостоятельно и в помощь приложу SQL запрос, который считает «в лоб», т.е. генерирует все возможные комбинации выпадения для 3-х кубиков, а потом пересчитывает все выпавшие суммы. В результате отработки скрипта мы получим 2 столбца из самого конца пункта “Этап I. Генерация 2-х списков/массивов: Значения (сумма выпавших костей) И Сколько раз встречается значение”.

SQL запрос — генератор решения «в лоб»

-- заводим значения сторон кубика
WITH step_01_insert (dice) AS (
    SELECT 1 AS dice UNION ALL
    SELECT 2 AS dice UNION ALL
    SELECT 3 AS dice UNION ALL
    SELECT 4 AS dice UNION ALL
    SELECT 5 AS dice UNION ALL
    SELECT 6 AS dice
)
-- генерируем все возможные ситуации для 3-х кубиков
, step_02_spawn (dice_1, dice_2, dice_3, dice_sum) AS (
    SELECT T1.dice AS dice_1
    , T2.dice AS dice_2
    , T3.dice AS dice_3
	, T1.dice + T2.dice + T3.dice AS dice_sum -- Значения (сумма выпавших костей)
    FROM step_01_insert AS T1
    , step_01_insert AS T2
    , step_01_insert AS T3
)
-- считаем в лоб, сколько раз встречается значение
SELECT dice_sum  -- Значения (сумма выпавших костей)
, COUNT(1) AS num  -- Сколько раз встречается значение
FROM step_02_spawn
GROUP BY dice_sum
ORDER BY dice_sum;

dice_sum

num

3

1

4

3

5

6

6

10

7

15

8

21

9

25

10

27

11

27

12

25

13

21

14

15

15

10

16

6

17

3

18

1

Конечно это не достаточно для полноценного доказательства, о котором я расскажу чуть позже, но хоть накал скепсиса, надеюсь, мне удалось сбавить.

Отмечу, что я не претендую на какую-то оригинальность, т.к. подобный алгоритм упоминается в данных статьях: «How to Calculate Multiple Dice Probabilities» Method 2 Recursion, «Как посчитать вероятность определенной комбинации при игре в кости» Метод 2 Рекурсия (перевод).

Пусть вас не смущает хитрое смещение суммирования в формуле Excel – суть от этого никак не меняется. Явно именно раздел «Метод 2» затачивался под Excel реализацию, но запрограммировать данный алгоритм в лоб без изменений именно на каком-либо языке программирования — задача не тривиальная.

Но всё-таки, почему этот алгоритм работает?

Для начала вспомним треугольник Паскаля:

Из всего множества его замечательных свойств я бы хотел заострить внимание на следующем: до строки:

цифры в треугольнике Паскаля повторяют степени числа 11 в степени 1<=k<=4 (натуральное). Но это утверждение верно для десятичной системы счисления, однако, если считать степень числа 11 в шестнадцатеричной системе счисления, то можно продлить совпадения до 1<=k<=5.

Можно задаться вопросом: а на каком калькуляторе можно 11 возводить в степень 5 в шестнадцатеричной системе счисления? Ответ: воспользуемся свойством

Иначе говоря идём итерационно:
121=11 * 11
1331=121 * 11
14641=1331 * 11
15AA51=14641 * 11

Давайте чуть здесь остановимся и вспомним школьную программу, а именно умножение в столбик, с одной лишь оговоркой, что перенос числа из одного разряда в другой (при переполнении разряда) буду делать отдельной операцией, а так же визуально для каждого разряда выделю отдельный столбец.
Пример 1.
14641 * 11 в десятеричной системе счисления.

  1. Заполняем условия.

  2. Записываем результаты умножения каждой единицы разряда.

  3. Суммируем.

  4. Переводим из переполнившихся разрядов в разряды выше.

Проделаем ту же операцию в шестнадцатеричной системе счисления (Шестнадцатеричная система счисления)
Пример 2.

  1. Заполняем условия.

  2. Записываем результаты умножения каждой единицы разряда.

  3. Суммируем.

  4. Записываем полученные числа правильно в шестнадцатеричной системе счисления.

И для закрепления ещё один.
Пример 3.
15AA51 * 11 в шестнадцатеричной системе счисления.

  1. Заполняем условия в шестнадцатеричной системе счисления.

  2. Переводим запись из шестнадцатеричной в десятичную систему счисления для улучшения восприятия (благо мы можем себе это позволить, т.к. визуально отделяем каждый разряд друг от друга).

  3. Записываем результаты умножения каждой единицы разряда.

  4. Суммируем.

  5. Переводим поэтапно из переполнившихся разрядов в разряды выше.

  6. Записываем полученные числа правильно в шестнадцатеричной системе счисления.

Во всех приведённых примерах я бы акцентировал внимание на пунктах «Суммируем» (Пример 1 — п3., Пример 2 — п3., Пример 3 — п4.), которые «цитируют» одну из строк треугольника Паскаля. Если продолжить мысль, то манипуляции с разрядами мешают нормальному воспроизведению всего треугольника. А давайте от них избавимся? Т.е. условно говоря будем считать (да простят меня математики) в «условно бесконечной системе счисления» (вероятно есть и более адекватный термин, но увы, беглый запрос по интернету ничего не дал, что больше доказывает мою лень, а не на отсутствие информации как таковой), т.е. когда перехода из одного разряда в другой при операции сложения не происходит. И это работает:

Тут я не претендую опять же на оригинальность, данный метод есть и им пользуются: как вывести треугольник Паскаля на Python? (см. «Простейшая реализация»)

Аналогия с умножением в столбик двух чисел в очень большой системой счисления, в принципе, имеет право на существование и даёт представление об операции, однако стоит грамотнее назвать её свёрткой последовательности. В данном посте приводится как раз выведение «строк» треугольника Паскаля сверткой: дискретная свёртка или полиномиальное умножение

Вернёмся к кубикам.

Посчитаем в лоб сколько раз встречается сумма костей для всех возможных случаев.

1 кубик (тут всё просто).

2 кубика (идём по классике жанра).

Тут конечно можно посчитать вручную, т.е. просуммировать все единицы в правой таблице, соответствующие полученным значениям в левой таблице (лучше визуализировать):

Однако, заметим смещение «Полученных значений» в левой таблице и преобразуем обе таблицы следующим образом:

После этого в правой таблице нам останется лишь просуммировать строки. Опять же тут немного остановимся на правой табличке, и заметим, что она напоминает уже упомянутое выше умножение столбик в десятичной системе счисления (или свёртку последовательностей).

В итоге получим:

Проделаем аналогичные шаги для 3-х кубиков:

Смещаем:

Акцентируем внимание, что опять же правая таблица напоминает умножение в столбик в «условно бесконечной системе счисления» (или свёртку последовательностей):

Выводим результат:

Описанные операции итерационно можно продолжать сколь угодно долго.

Данный алгоритм походит для любого числа одинаковых игровых кубиков с любым количеством граней, у которых числа на гранях входят в арифметическую последовательность. И его при некотором желании можно даже модифицировать и для решения задач, когда речь идёт не об однотипных кубиках а с разным количеством граней (правда я ума не приложу кому это может понадобиться).

Итого, выводы

  1. Задачи на поиск вероятности выпадения числа k у n игральных кубиков попадаются на собеседованиях.

  2. В данной статье рассмотрен довольно элегантный алгоритм по решению подобных задач, указанных выше. В принципе можно решать подобные задачи просто на листе бумаге.

О чём стоит упомянуть
Представленный алгоритм не является самым оптимальным. Например для 1000 кубиков (не знаю кому это будет нужно, но вдруг) придётся просчитать для всех элементов последовательности 1000 раз. Но можно ещё поиграться с умножением в столбик в «условно …» и снизить вычислительную сложность алгоритма с O(n^2) («Оценка сложности алгоритмов, или Что такое О(log n)»).

Updated: 23.08.2022

На этой странице вы узнаете

  • Как кот может быть одновременно жив и мертв? 
  • Можно ли всегда выигрывать спор с монеткой? 
  • Если рандомно ответить на вопрос теста, какой шанс угадать ответ?

Какова вероятность выиграть в лотерею? Исследователи подсчитали: один на восемь миллионов. «Или выиграю, или проиграю», — решаю я, покупая лотерейный билет. Так понятие вероятности преследует нас в обычной жизни. И не только в лотерее. Давайте разберемся подробнее.

Вероятность

Выходя утром из дома, мы задумываемся: брать ли с собой зонт? Проверяем прогноз погоды — вероятность выпадения осадков 2%. Зонтик нам сегодня вряд ли понадобится. В пути нас настигает ливень…

Прогноз погоды — самый яркий пример вероятности. Он не всегда бывает точный, не всегда сбывается. Мы не можем с уверенностью сказать, что будет завтра. Зато можем по совокупности факторов определить, на какую погоду стоит ориентироваться. 

Теория вероятности — один из разделов математики, в котором изучаются модели случайных экспериментов. 

Случайными экспериментами называются такие, результаты которых неизвестны заранее. Подбрасывая монетку, мы не знаем, что выпадет — орел или решка. Только поймав монетку, мы узнаем результат. 

Как кот может быть одновременно жив и мертв? 

Ученый по имени Эрвин Шредингер провел мысленный эксперимент. Он поместил кота в закрытый ящик, в котором был расположен механизм, содержащий атомное ядро и ёмкость с ядовитым газом. 

По эксперименту с вероятностью 0,5 ядро распадется, емкость с газом откроется и кот умрет. Но при этом с вероятностью 0,5 ядро не распадается и кот останется жив. 

Пока ящик закрыт, мы не знаем результат эксперимента — такой эксперимент в математике можно назвать случайным.  Тем временем кот находится одновременно в двух состояниях: он и жив, и мертв. 

Рассмотрим чуть подробнее пример с монеткой. Есть всего два варианта, какое событие может произойти:

  • выпадет орел;
  • выпадет решка. 

Эти два события образуют множество элементарных событий. 

Множество элементарных событий — множество всех возможных результатов случайного эксперимента. 

В случае выше их всего два. А если мы будем подбрасывать игральную кость, то их будет уже 6. Множество элементарных событий будет менять в зависимости от ситуации. 

Допустим, мы поспорили с друзьями, что выпадет орел. Для нас это событие будет благоприятным, поскольку мы выиграем спор. Второе событие будет неблагоприятным, потому что спор будет проигран. 

Как найти вероятность, что мы выиграем спор? Нужно разделить число благоприятных событий на общее число событий. Таким образом, мы получили классическое определение вероятности. 

Вероятность — отношение количества благоприятных событий к количеству всех возможных событий. 

Пусть m — количество благоприятных исходов, а n — количество всех событий. Получаем следующую формулу. 

(P = frac{m}{n})

Вероятность можно обозначить, как P(x), где х — некоторое событие. 

Заметим, что количество благоприятных исходов должно быть либо меньше, либо равно количеству всех исходов. Если благоприятных событий больше, чем всех, значит, мы нашли не все множество элементарных событий.

Когда вероятность равна 1, то такое событие точно наступит. Иначе говоря, мы можем быть уверены на 100% — оно произойдет.

Можно ли всегда выигрывать спор с монеткой?

Можно, если хитро сформулировать условия. Например: «Орел — я выиграл, решка — ты проиграл». Вероятность выигрыша в этом случае будет равна (P = frac{2}{2} = 1), то есть мы точно выиграем спор. 

Однако вероятность не так проста, и даже здесь подготовила ловушку. 

В редких случаях есть и третий вариант событий — монетка встанет на ребро. Вероятность такого события составляет  (frac{1}{6000}). То есть за миллион бросков это может случиться 150 раз или 1 раз в 2 дня, если подкидывать монету каждый день по 8 часов в течение года. Чтобы монета встала на ребро два раза подряд, придется подбрасывать ее в том же темпе около 35 лет.

Вероятность всегда будет меньше или равна 1. Но ее можно выразить и через проценты. Для этого достаточно умножить полученный результат на 100%. 

Пример 1. На ресепшене одного из отелей стоит ваза с конфетами. В вазе 56 яблочных конфет, 49 апельсиновых и 35 малиновых. Гость отеля наугад тянет конфету. Какова вероятность, что ему попадется апельсиновая конфета?

Решение. Найдем, сколько всего конфет в вазе: 56 + 49 + 35 = 140. Вероятность вытащить апельсиновую конфету будет равна 
(frac{49}{140} = 0,35)

Выразим в процентах:  
0,35 * 100% = 35%

Задача решена. Обычно в ответе пишут значение вероятности через дробное число, а не проценты. Поэтому получаем следующий ответ. 

Ответ: 0,35

Чтобы выразить вероятность через проценты в одно действие, достаточно воспользоваться следующей формулой. 

(P = frac{m}{n} * 100%)

Но что, если нам нужно найти вероятность для более сложных экспериментов? Первым делом нужно определить, какие события перед нами.

Равновозможные и противоположные события

Когда мы бросаем игральную кость, вероятность выпадения любого из чисел равна 16. То есть вероятности выпадения чисел равны между собой. Такие события называются равновозможными. 

Равновозможные события — такие события, что по условиям опыта ни одно из них не является более возможным, чем другие. 

Вероятности появления событий равны. 

Для игрального кубика существует всего шесть событий, которые могут произойти: выпадет число 1, 2, 3, 4, 5 или 6. Все эти события образуют полную группу событий. 

Полная группа событий — такая группа событий, если в результате опыта обязательно появится хотя бы одно из них. 

В результате подбрасывания монеты выпадет либо орел, либо решка. То есть полная группа событий состоит из двух событий. 

Мы подбросили монету и выпал орел. Следовательно, не выпала решка. 

А если не выпадет орел? Обязательно выпадет решка. Эти события будут называться противоположными. 

Противоположные события — такие события, если при не наступлении одного обязательно наступает второе. 

Обозначим событие “выпала решка” как A. Противоположное ему событие “выпал орел” обозначим как (overline{A}). 

Заметим, что вероятность события A равняется 12, как и вероятность события (overline{A}). Чему равна их сумма?

)frac{1}{2} + frac{1}{2} = 1) 

Так мы вывели связь между противоположными событиями. Поскольку они всегда образуют полную группу событий, то сумма их вероятностей будет равна 1. 

(P(A) + P(overline{A}) = 1)

Какие еще примеры противоположных событий можно назвать? Ясная и дождливая погода. Если наступает одно из этих событий, то второе уже не может наступить. 

Объединение и пересечение событий 

Допустим, у нас есть два события: сегодня пойдет снег и сегодня пойдет дождь. Что будет, если мы их объединим? 

Объединение событий — событие, состоящее из всех элементарных исходов, благоприятствующих хотя бы одному из событий. 

В этом случае мы получим событие, которое будет выполняться при любом из исходов: и если пойдет снег, и если не пойдет снег. 

Объединение событий обозначается знаком (cup). Объединение событий А и В можно записать как (A cup B). 

Рассмотрим немного другой пример. В первое событие входит, что Илья получит пятерку по физике, а второе событие — Антон получит пятерку по физике. А как можно назвать событие, если оба мальчика получат пятерку по физике?

Пересечение событий — событие, состоящее из всех элементарных исходов, благоприятствующих обоим событиям. 

Пересечение событий обозначается знаком (cap). Пересечение событий А и В можно записать как (A cap B). 

Несовместные и совместные события

Рассмотрим два события: “чайник исправно работает” и “чайник сломался”. Могут ли эти события существовать одновременно? Нет, поскольку появление одного из них исключает появление другого.

Такие события называются несовместными. Название само говорит, что события не могут существовать одновременно. 

Несовместные события — такие события, появление одного из которых исключает появление другого. 

Решим небольшую задачу. На экзамене есть несколько билетов. С вероятностью 0,5 попадется билет по планиметрии. С вероятностью 0,3 попадется билет по экономике. При этом не существует билетов, которые включают обе эти темы. С какой вероятностью на контрольной попадется билет по одной из этих тем?

Представим билеты в виде схемы. Заметим, что нам нужно объединить два из трех кругов, то есть сложить их вероятности. 

Следовательно, вероятность будет равна 0,5 + 0,3 = 0,8.

Сформулируем определение суммы вероятностей двух несовместных событий. 

Если события А и В несовместны, то вероятность их объединения равна сумме их вероятностей:

(P(A cup B) = P(A) + P(B))

Если существуют несовместные события, то существуют и совместные. 

Совместные события — события, наступление одного из которых не исключает наступления другого. 

В магазине работают два консультанта. Один из них занят общением с клиентом. Означает ли это, что второй консультант тоже занят?  Нет, поскольку они работают независимо друг от друга. Если занят первый консультант, второй может быть как занят, так и нет. 

Подбросим игральный кубик и рассмотрим два вида событий. Пусть событие А — это “выпадет число 2”, событие В — “выпадет четное число”. 

Найдем вероятность события А: (frac{1}{6}). 

Для события В всего три благоприятных исхода из шести: выпадет число 2, 4 или 6. Тогда вероятность наступления события В равна (frac{3}{6} = frac{1}{2})

Исключают ли события А и В друг друга? Нет, поскольку если произойдет событие А, произойдет и событие В. Когда произойдет событие В, есть вероятность, что произойдет и событие А. 

Найдем объединение совместных событий на примере кругов. Если мы наложим их друг на друга, то в середине получится как бы два слоя. Проверить это можно, если наложить друг на друга два листа бумаги. 

А нужно получить вот такую картину:

Поэтому для объединения двух кругов нам нужно будет исключить одну из серединок. 

Если события А и В совместны, то вероятность их объединения равна сумме их вероятностей без вероятности их пересечения:

(P(A cup B) = P(A) + P(B) — P(A cap B))

В каких случаях нужно пользоваться формулой со сложением? Достаточно, чтобы задачу можно было сформулировать с помощью “или”. Например, нужно, чтобы выпали темы по планиметрии или по экономике. 

Независимые и зависимые события 

Прогуляемся в магазин за булочками. В упаковке две булочки, а сама упаковка непрозрачная, то есть увидеть булочки до вскрытия упаковки мы не можем. 

Известно, что на заводе, где изготавливаются булочки, 5 из 100 булочек подгорают. Значит, 95 из 100 булочек не подгорают. По классическому определению вероятности находим, что вероятность каждой булочки не подгореть равна (frac{95}{100} = 0,95). 

Какова вероятность, что в упаковке попадутся только не подгорелые булочки? Как найти вероятность сразу для двух булочек?

Ответим на вопрос: зависят ли булочки друг от друга? 

Если подгорит одна из булочек в упаковке, не обязательно подгорит другая. Следовательно, булочки не зависят друг от друга. Такие события называются независимыми. 

Независимые события — такие события, появление одного из которых не зависит от появления другого события. 

Определим вероятность независимых событий. 

Пусть вероятность, что подгорела первая булочка, будет равна Р(А) = 0,95, а вероятность для второй булочки будет равна Р(В) = 0,95. 

А чтобы найти вероятность независимых событий, нужно воспользоваться следующей формулой:

(P(A cap B) = P(A) * P(B))

Тогда вероятность, что булочки в одной упаковке не подгорят, равняется P = 0,95 * 0,95 = 0,9025. 

В каком случае нужно пользоваться этой формулой? Нужно подставить союз “и”. 

Мы хотим, чтобы в упаковке первая булочка была не подгорелой и вторая булочка была не подгорелой. 

Приведем еще один пример. В здании два автомата с кофе на разных этажах. Даже если сломается один из них, работа второго не будет зависеть от первого. 

Но если автоматы стоят  рядом и включены в одну розетку, то при поломке одного из них есть вероятность выхода из строя розетки, а значит, и второй автомат тоже сломается. Такие события будут зависимыми: появление одного из них зависит от появления другого. 

Предположим, что в мешке лежит семь кубиков: два из них оранжевые, а пять — фиолетовые. Из мешка дважды вытаскивают кубики. Какова вероятность, достать во второй раз именно фиолетовый кубик?

Нужная последовательность может быть в двух случаях:

  • сначала вытащат фиолетовый кубик и потом снова фиолетовый;
  • сначала вытащат оранжевый кубик, а потом фиолетовый. 

Разберем первый случай. Вероятность в первый раз вытащить фиолетовый кубик равна (frac{5}{7}). После этого в мешке останется шесть кубиков, четыре из которых будут фиолетовые. 

Вероятность вытащить во второй раз фиолетовый кубик равна (frac{5}{7} * frac{4}{6} = frac{20}{42} = frac{10}{21}). 

Теперь рассмотрим второй случай. Вероятность в первый раз достать оранжевый кубик равна (frac{2}{7}). В мешке останется шесть кубиков, пять из которых будут фиолетовыми. 

Вероятность вытащить во второй раз фиолетовый кубик будет уже равна (frac{2}{7} * frac{5}{6} = frac{10}{42} = frac{5}{21}). 

В этом примере очень наглядно видно, что вероятность напрямую зависит от того, какой кубик попался первым. Следовательно, эти события зависимы. 

Как отличить зависимые и независимые события? Если после наступления первого события меняется количество благоприятных и всех исходов, то такие события — зависимые. Если количество благоприятных и всех исходов не меняется, то события независимые.

Условная вероятность — вероятность некоторого события В при условии наступления некоторого события А. 

Условная вероятность обозначается P(B|A). В нашем примере условной вероятностью будет вычисление, что во второй раз попадется именно фиолетовый кубик.   

Найдем вероятность двух зависимых событий. Формула похожа на ту, что используется для независимых событий. Но в этот раз нам нужно применить условную вероятность. 

Вероятность появления двух зависимых событий равна произведению вероятности одного из них на условную вероятность другого, при условии, что первое событие уже наступило:

(P(A cap B) = P(A) * P(B | A))

Формула Бернулли

Рассмотрим случаи, когда испытание повторяется многократно. Для этого еще раз обратимся к игральному кубику. Подбросим кубик 8 раз. Какова вероятность, что цифра 5 выпала ровно три раза?

Пусть p — вероятность, что выпадет цифра 5. Тогда (p = frac{1}{6}). 

Теперь возьмем q — противоположное р событие — вероятность, что цифра 5 не выпадет. (q = frac{5}{6}). 

Обозначим количество всех бросков за n, а количество выпадения цифры 5 за k. 

Чтобы решить задачу, нужно воспользоваться формулой Бернулли. 

(P_n(k) = C_n^k * p^k * q^{n — k}) 

Множитель (C_n^k) — это число сочетаний. Подробнее узнать про сочетания можно в статье «Основы комбинаторики». 

Решим задачу, подставив значения в формулу:

(P_8(3) = C_8^3 * (frac{1}{6})^3 * (frac{5}{6})^5 = frac{8!}{5!3!} * frac{1}{6^3} * frac{5^5}{6^5} = frac{6 * 7 * 8}{1 * 2 * 3} * frac{5^5}{6^8} approx 0,1) 

Фактчек

  • Вероятность — отношение количества благоприятных событий к количеству всех возможных событий. 
  • События могут быть противоположными. Противоположные события — такие события, если при не наступлении одного обязательно наступает второе. 
  • События можно разделить на совместные и несовместные. Несовместные события — такие события, появление одного из которых исключает появление другого. Если события А и В несовместны, то вероятность их объединения равна сумме их вероятностей: P(A (cup) B) = P(A) + P(B). Совместные события — события, наступление одного из которых не исключает наступления другого. Если события А и В совместны, то вероятность их объединения равна сумме их вероятностей без вероятности их пересечения: P(A cup B) = P(A) + P(B) — P(A cap B).
  • События также можно разделить на независимые и зависимые. Независимые события — такие события, появление одного из которых не зависит от появления другого события. Вероятность независимых событий можно найти по формуле P(A cap B) = P(A) * P(B). Зависимые события — это события, появление одного из которых зависит от появления другого. Вероятность появления двух зависимых событий равна произведению вероятности одного из них на условную вероятность другого, при условии, что первое событие уже наступило. P(A cap B) = P(A) * P(B | A). 
  • Условная вероятность — вероятность некоторого события В при условии наступления некоторого события А. 

Проверь себя

Задание 1. 
Какие события являются несовместными?

  1. Подбрасывание монетки.
  2. Брак батареек в одной упаковке.
  3. “Миша идет” и “Миша стоит”.
  4. Случайное вытаскивание конфет из вазы. 

Задание 2. 
Алена делает ошибку при решении задач по математике с вероятностью 0,17. С какой вероятностью она не сделает ошибку при решении задачи?

  1. 0,17
  2. 1
  3. 0,83
  4. 1,17 

Задание 3. 
Артем решал задачи на вероятность. Ниже приведены его ответы. В какой из задач он точно совершил ошибку?

  1. 1
  2. 0,216
  3. 0,45
  4. 1,5 

Задание 4. 
В упаковке три шариковые ручки. С вероятностью 0,1 такая ручка не будет писать. Найдите вероятность, что все три ручки в упаковке пишут. 

  1. 0,3
  2. 0,001
  3. 2,7
  4. 0,729 

Задание 5. 
Перед Дашей лежит несколько карточек. Она случайно переворачивает одну из них. С вероятностью 0,5 на карточке окажется рисунок природы. С вероятностью 0,27 на карточке окажется мотивационная цитата. Карточек и с рисунком, и с цитатой нет. Найдите вероятность, что Дана перевернет карточку или с рисунком, или с цитатой. 

  1. 0,77
  2. 0,135
  3. 0,23
  4. -0,23

Ответы: 1. — 3 2. — 3 3. — 4 4. — 4 5. — 1


Загрузить PDF


Загрузить PDF

Множество людей думают, что если бросить три игровых кости с шестью сторонами, существует одинаковая вероятность получения как тройки, так и десятки. Это неправда, в этой статье мы расскажем вам, как посчитать среднее линейное отклонение и квадратичное отклонение при выбросе комбинаций игральными костями.

Давайте разберемся в терминологии механики игровых костей. У обычного игрового кубика 6 сторон, но существуют также другие вариации. Например, двухсторонние игровые кости «монеты», четырехсторонние «пирамиды», 8-сторонние «октаэдры», 10-сторонние «декаэдры», 12-сторонние «додекаэдры» и двадцатисторонние «икосаэдры». При выбросе костей соблюдается формат (количество костей) (сокращенный идентификатор игрового кубика). Запись 2D6 означает выброс двух костей с 6 сторонами. В этой статье в формулах будут использованы следующие обозначения: N – количество выбрасываемых костей, R — количество сторон в каждой игровой кости, от 1 до R, а также K — комбинаторное значение. Есть несколько методов вычисления вероятности выпадения каждой сумы.

  1. Изображение с названием Calculate Multiple Dice Probabilities Step 1

    1

    Запишите количество костей, их сторон и нужное число.

  2. Изображение с названием Calculate Multiple Dice Probabilities Step 2

    2

    Перечислите все комбинации, с помощью которых может получится данная сумма. Чем больше у вас игровых костей, тем больше комбинаций. Например, если N = 5, R = 6, K = 12. Смотрите запись на картинке снизу. Чтобы убедиться, что ни одна комбинация не была посчитана дважды, все значения приведены в словарном порядке, а кости не в уменьшающемся порядке.

  3. Изображение с названием Calculate Multiple Dice Probabilities Step 3

    3

    Не все комбинации, записанные в предыдущем шаге, имеют одинаковую вероятность выпадения. Возьмем пример трехсторонней игровой кости с тремя сторонами 1,2,3. Существует 6 возможностей — (123, 132, 213, 231, 312, 321), но при сторонах 1,1,4 есть только 3 возможности — 114, 141, 411. Используйте полиномиальную формулу для вычисления количества комбинаций всех цифр. Эта информация добавлена в таблицу на картинке внизу.

  4. Изображение с названием Calculate Multiple Dice Probabilities Step 4

    4

    Сложите все возможные комбинации получения нужной суммы.

  5. Изображение с названием Calculate Multiple Dice Probabilities Step 5

    5

    Разделите на общее количество результатов. Поскольку у каждой игровой кости есть R одинаково вероятных сторон, записываем Rn.

    Реклама

Этим методом считают вероятность выпадения всех сумм для все цифр на игровых костях. Его легче всего записывать в форме таблицы.

  1. Изображение с названием Calculate Multiple Dice Probabilities Step 6

    1

    Запишите вероятность выброса для одной игровой кости. В примере на картинке записан способ исчисления вероятности для 6-сторонней игровой кости. Пустые ряды в таблице с отрицательными числами принято считать нулями, используя ту же формулу для каждого ряда таблицы.

  2. Изображение с названием Calculate Multiple Dice Probabilities Step 7

    2

    В колонке таблицы для расчета вероятности для двух игровых костей используйте приведенную формулу. Вероятность выпадения суммы К для двух костей равняется сумме следующего (описано ниже). Для каждой большой или маленькой величины К некоторые из этих значений могут равняться 0, но формула действительна для всех значений К.

    • Первая кость показывает К-1, а вторая показывает 1.
    • Первая кость показывает К-2, а вторая показывает 2.
    • Первая кость показывает К-3, а вторая показывает 3.
    • Первая кость показывает К-4, а вторая показывает 4.
    • Первая кость показывает К-5, а вторая показывает 5.
    • Первая кость показывает К-6, а вторая показывает 6.
  3. Изображение с названием Calculate Multiple Dice Probabilities Step 8

    3

    Точно так же, для 3 или более игровых костей применяется та же формула, с использованием вероятностей выпадения каждой суммы на одной игровой кости. Формула, описанная во втором шаге, может быть применена как к рядам таблицы, так и к колонкам, пока в нее не будут включены все данные из таблицы.

  4. Изображение с названием Calculate Multiple Dice Probabilities Step 9

    4

    Приведенная ниже картинка показывает количество способов достижения нужной суммы, а не вероятность. Но, вероятность = количество способов достижения нужной суммы / Rn, где R—количество сторон каждой игровой кости, а N— количество игровых костей.

    Реклама

  1. Изображение с названием Calculate Multiple Dice Probabilities Step 10

    1

    Запишите многочлен ( 1/ R)(X+X2+Xr). Это производящая функция для одной игровой кости. Коэффициент Хк—это вероятность того, что вы выбросите сумму К.

  2. Изображение с названием Calculate Multiple Dice Probabilities Step 11

    2

    Возведите многочлен в степень n, чтобы получить производящею функцию для суммы, которая выпала на игровых костях. Получилось ( 1/ R)(X+X2+Xr)n. Если N больше 2, вам понадобится калькулятор.

  3. Изображение с названием Calculate Multiple Dice Probabilities Step 12

    3

    Подсчет этой вероятности делается так же, как и в предыдущем методе, но иногда теоретические результаты получить легче с помощью производящей функции. Например, если вы бросаете 2 обычных игровых кости, у них будет точно такое же распределение возможных сумм, как и у необычной игровой кости (1,2,2,3,3,4) и другой (1,3,4,5,6,8). Это происходит потому, что (x+x2 +x2+x3+x3+x4)(x+x3 +x4+x5+x6+x8) = (x+x2 +x3+x4+x5+x6)(x+x2 +x3+x4+x5+x6).

    Реклама

  1. Изображение с названием Calculate Multiple Dice Probabilities Step 13

    1

    Для большого количества игровых костей подсчитать вероятность с помощью вышеописанных методов будет сложно. Теорема о центральном пределе утверждает, что сумма чисел на идентичных игровых костях приближается к нормальному распределению с увеличением количества игровых костей.

  2. Изображение с названием Calculate Multiple Dice Probabilities Step 14

    2

    Подсчитайте среднее отклонение и стандартное отклонение, основываясь на количестве и типе игровых костей. Предположим, что игровые кости пронумерованы от 1 до R, смотрите формулу ниже.

    • Среднее значение (R+1)/2.
    • Дисперсия распределения вероятности n(r^2-1)/12.
    • Стандартное квадратичное отклонение—это квадратный корень дисперсии.
  3. Изображение с названием Calculate Multiple Dice Probabilities Step 15

    3

    Используйте нормальное распределение со средним значением и стандартным квадратичным отклонением как аппроксимацию суммы, выброшенной на игровых костях.

    Реклама

Предупреждения

  • Если у вас несколько игровых костей с разным количеством сторон, вычисление вероятности сильно усложнится. Самый простой способ вычисления вероятности — перечисление всех возможных результатов и упорядочивание их в возрастающем порядке по общей сумме.

Реклама

Об этой статье

Эту страницу просматривали 22 376 раз.

Была ли эта статья полезной?

Понравилась статья? Поделить с друзьями:

Не пропустите также:

  • Как найти вакцину от вируса
  • Как составить завещание на сына если м
  • Как найти хорошего врача в интернете
  • Как это найти папика
  • Закон всемирного тяготения формулы как найти расстояние

  • 0 0 голоса
    Рейтинг статьи
    Подписаться
    Уведомить о
    guest

    0 комментариев
    Старые
    Новые Популярные
    Межтекстовые Отзывы
    Посмотреть все комментарии