Как установить количество случаев или процент выигрышей в JavaScript - PullRequest
0 голосов
/ 16 марта 2020

У меня есть числовая игра (лото), в которой есть массив от 1 до 36.

  myNum = [1,2,3...36];

Игрок должен выбрать 6 чисел из 1 - 36 (в массив). Я также генерирую случайные 6 чисел (в другой массив). И игрок выигрывает определенную сумму в зависимости от количества матчей (с моим).

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

   winPercentage = 80; //80 percent

или любым другим способом.

Я сделал несколько попыток с моим небольшим знанием JS, искал inte rnet и ТАК, но не смог понять / найти способ. Кто-нибудь, пожалуйста, помогите

Ответы [ 2 ]

0 голосов
/ 16 марта 2020

В основном, выражение для оценки таково:

первый ИЛИ второй ИЛИ третий ИЛИ четвертый ИЛИ пятый ИЛИ шестой

P (первый) = P (второй ) = P (третий) = P (четвертый) = P (пятый) = P (шестой) = 1/36

Можно было бы интуитивно думать, что результат будет

1/36 + 1/36 + 1/36 + 1/36 + 1/36 + 1/36 = 6 * 1/36 = 1/6 ,

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

1/36 +

35/36 * 1/36 +

(1 - 35/36 * 1/36) * 1 / 36 +

(1 - (1 - 35/36 * 1/36) * 1/36) * 1/36 +

(1 - (1 - (1 - 35 /) 36 * 1/36) * 1/36) * 1/36) * 1/36 +

(1 - (1 - (1 - (1 - 35/36 * 1/36) * 1 / 36) * 1/36) * 1/36) * 1/36

, что составляет

0,16289262235174626 ~ 16,28%

извините , это не 80%. Вы можете присвоить это значение 0.16289262235174626 такой переменной, как

var winChance = 0.16289262235174626;

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

100 * winChance
0 голосов
/ 16 марта 2020

Если я правильно понимаю, что вы хотите рассчитать процент выигрыша игрока против вас.

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

Скажем,

the_total_match_played (TM) = 80;
player_win(PW) = 30;

win_percengage(WP) = (PW * 100) / TM;
WP = (30 * 100) / 80;
   = 37.5%

Примечание: Если я неправильно понимаю вашу проблему, пожалуйста, не стесняйтесь комментировать.

...