Javascript процент выигрыша алгоритма

У меня есть игровой автомат HTML5 + Javascript. Я нашел приведенный ниже алгоритм в Stackoverflow, но мне нужен другой процент

this.d = Math.random();

        if (this.d < 0.3333) {
        this.nextSymbols = [
            ['320', '320', 'jackpot'],
            ['jackpot', '320', '400'],
            ['320', '320', 'jackpot'],
        ];
    } else if (this.d < 0.005) {
        this.nextSymbols = [
            ['320', 'jackpot', '400'],
            ['320', 'jackpot', '400'],
            ['320', 'jackpot', '400'],
        ];
    } else {
        this.nextSymbols = [
            [Symbol.random(), Symbol.random(), Symbol.random()],
            [Symbol.random(), Symbol.random(), Symbol.random()],
            [Symbol.random(), Symbol.random(), Symbol.random()],
        ];
    }

Мне нужно иметь:

 1 of 3 spins to be a winning prize 2 

1 of 200 spins wins big prize

Любой совет эксперта по математике был бы очень признателен.

Спасибо

Какое значение имеет фраза «У меня 10 крупных призов» для вероятности одного спина?

Bergi 19.11.2018 23:04

Подсказка: 1/3 = 0.3333…, 1/200 = 0.005 (по сравнению с 50% = 0.5, 20% = 0.2 в существующем коде)

Bergi 19.11.2018 23:05

@Bergi, спасибо. я понял

PixelArtie 19.11.2018 23:21
< означает меньше. Итак, if (this.d < 0.005) означает, что значение меньше 0,005. Любое значение в этом случае также меньше 0,3333. Однако if-test для <0,005 находится в предложении else для <0,3333, поэтому никто никогда не выиграет большой приз.
Richardissimo 19.11.2018 23:39
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
В настоящее время производительность загрузки веб-сайта имеет решающее значение не только для удобства пользователей, но и для ранжирования в...
Безумие обратных вызовов в javascript [JS]
Безумие обратных вызовов в javascript [JS]
Здравствуйте! Юный падаван 🚀. Присоединяйся ко мне, чтобы разобраться в одной из самых запутанных концепций, когда вы начинаете изучать мир...
Система управления парковками с использованием HTML, CSS и JavaScript
Система управления парковками с использованием HTML, CSS и JavaScript
Веб-сайт по управлению парковками был создан с использованием HTML, CSS и JavaScript. Это простой сайт, ничего вычурного. Основная цель -...
JavaScript Вопросы с множественным выбором и ответы
JavaScript Вопросы с множественным выбором и ответы
Если вы ищете платформу, которая предоставляет вам бесплатный тест JavaScript MCQ (Multiple Choice Questions With Answers) для оценки ваших знаний,...
1
4
141
1

Ответы 1

Подводя итог - как написано в комментариях @Bergi и @Richardissimo. 1/3 равно 0. (3), но вы можете просто написать интерпретатор thid.d < 1/3, который рассчитает это за вас. А если вы делаете else if, то второй корпус никогда не сработает. Вы должны изменить порядок условий.

Другие вопросы по теме