0

2 つの配列をロードしようとしています。サイコロを振って可能な結果 (1 ~ 6) を表します。最初の配列には、最初のサイコロの結果と 2 番目の配列が読み込まれます.....サイコロが振られる回数を管理する 1 つのループに両方の配列を保持し、重複した結果を生成しないようにするのに苦労しています。各ロールの間に再シードする必要があると信じています。どんな助けでも大歓迎です。

現在の出力: サイコロ 1: 5 サイコロ 2: 5 サイコロ 1: 3 サイコロ 2: 3 サイコロ 1: 1 サイコロ 2: 1 サイコロ 1: 6 サイコロ 2: 6 サイコロ 1: 6 サイコロ 2: 6 サイコロ 1: 2 サイコロ 2: 2 サイコロ 1: 5 サイコロ 2: 5 サイコロ 1: 2 サイコロ 2: 2 サイコロ 1: 1 サイコロ 2: 1 サイコロ 1: 1 サイコロ 2: 1

私は次のように書いています。

int min = 1;
    int max = 6;
    for (int i = 0; i < 10; i++)
    {
        Random rand;
        rand = new Random();

        int randomNumber = rand.nextInt(max) + min;
        diceOne[i] = randomNumber;
        System.out.print("Dice one: ");
        System.out.print(diceOne[i] + " ");


        int randomNumber2 = rand.nextInt(max) + min;

        diceTwo[i] = randomNumber2;
        System.out.print("Dice two: ");
        System.out.print(diceOne[i]);
        System.out.println();
4

2 に答える 2

1

diceTwo は絶対に使用しないでください。以下のコードを試してください

 int randomNumber = rand.nextInt(max) + min;
            diceOne[i] = randomNumber;
            System.out.print("Dice one: ");
            System.out.print(diceOne[i] + " ");


            int randomNumber2 = rand.nextInt(max) + min;

            diceTwo[i] = randomNumber2;
            System.out.print("Dice two: ");
            System.out.print(diceTwo[i]); //System.out.print(diceOne[i]);
            System.out.println();
于 2013-03-01T03:43:45.127 に答える
0

さて、あなたはdiceOne[i]両方の時間を印刷しているようです。

于 2013-03-01T03:27:39.713 に答える