Eclipse java подбрасывание монеты

#java

#java

Вопрос:

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

 import java.util.*;
public class Coinrolling {

    public static void main(String[] args) {
        Random rand = new Random(); 
        boolean noConsecutive = true;
        int flipCount = 0;
        int randomFlip;


        while (noConsecutive) {

            randomFlip = rand.nextInt(2)   1;

            if (randomFlip == 1) { 
                System.out.println("heads"); 
                flipCount  ;
            }else { 
                System.out.println("tail"); 
                flipCount= 0;
            }
            if (flipCount == 3) {
                noConsecutive = false;
            }
        }
    }
}
  

Комментарии:

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

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

Ответ №1:

Вы можете добавить tossCount переменную тем же способом, который у вас уже есть flipCount . Вы также можете упростить while условие цикла, проверив flipCount :

 Random rand = new Random();
int flipCount = 0;
int tossCount = 0;
while (flipCount != 3) {
    int randomFlip = rand.nextInt(2)   1;
    tossCount  ;
    if (randomFlip == 1) {
        System.out.println("heads");
        flipCount  ;
    } else {
        System.out.println("tail");
        flipCount = 0;
    }
}
System.out.print("tossed "   tossCount   " times");
  

Комментарии:

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

2. Вероятность того, что вы получите ровно 3 подбрасывания, равна 0.5^3 = 1/8 . У меня только что было 24 подбрасывания.