Gracz otrzymuje uczciwą, sześcioboczną kostkę. Aby wygrać, musi rzucić liczbą większą niż 4 (tj. 5 lub 6). Jeśli wyrzuci 4, musi rzucić ponownie. Jakie są jej szanse na wygraną?
Myślę, że prawdopodobieństwo wygranej można wyrazić rekurencyjnie jako:
Przybliżiłem jako , przeprowadzając 1 milion prób w Javie, w ten sposób:
import java.util.Random;
public class Dice {
public static void main(String[] args) {
int runs = 1000000000;
int wins = 0;
for (int i = 0; i < runs; i++) {
wins += playGame();
}
System.out.println(wins / (double)runs);
}
static Random r = new Random();
private static int playGame() {
int roll;
while ((roll = r.nextInt(6) + 1) == 4);
return (roll == 5 || roll == 6) ? 1 : 0;
}
}
I widzę, że można rozwinąć następujący sposób:
Ale nie wiem, jak rozwiązać ten rodzaj relacji powtarzalności bez uciekania się do tego rodzaju przybliżenia. Czy to możliwe?