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

Может кто-нибудь объяснить это ясно? Я вставляю соответствующий код Java здесь. Я думал, что количество испытаний и ставок одно и то же.

public class Gambler { 

    public static void main(String[] args) {
        int stake = Integer.parseInt(args[0]);    // gambler's stating bankroll
        int goal  = Integer.parseInt(args[1]);    // gambler's desired bankroll
        int T     = Integer.parseInt(args[2]);    // number of trials to perform

        int bets = 0;        // total number of bets made
        int wins = 0;        // total number of games won

        // repeat T times
        for (int t = 0; t < T; t++) {

            // do one gambler's ruin simulation
            int cash = stake;
            while (cash > 0 && cash < goal) {
                bets++;
                if (Math.random() < 0.5) cash++;     // win $1
                else                     cash--;     // lose $1
            }
            if (cash == goal) wins++;                // did gambler go achieve desired goal?
        }

        // print results
        System.out.println(wins + " wins of " + T);
        System.out.println("Percent of games won = " + 100.0 * wins / T);
        System.out.println("Avg # bets           = " + 1.0 * bets / T);
    }

}

1 ответ

В вашем примере кода программа запускает азартную игру. Игра заканчивается, когда игрок набрал определенную сумму денег (переменная цели) или ноль. Программа отслеживает количество ставок до тех пор, пока деньги не иссякнут или цель не будет достигнута. Это переменная "ставки" или количество ставок.

Игра повторяется несколько раз, обозначаемая переменной T (количество попыток). Во время каждого испытания программа отслеживает общее количество ставок (по всем испытаниям).

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

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