1

私はブラックジャック プログラムを作成しており、プログラムの開始時にプレーヤーにランダムなカードを配ろうとしています。これは、最初にプレイヤーにカードを配るために Java で作成した関数です。

public static int[][] initDeal(int NPlayers)
    {
        int hands[][] = new int[NPlayers][2];

        for(int a = 0; a<NPlayers; a++)
        {

            hands[a][0] = (int)Math.round((Math.random() * 13))-1;
            hands[a][1] = (int)Math.round((Math.random() * 13))-1;

        }
        return hands;
    }

各プレーヤーの 2 枚のカードがランダムに生成されているにもかかわらず、すべてのプレーヤーに同じカードが配られるため、Random メソッドと for ループに問題があると思います。

4

2 に答える 2

0

nextInt(n)クラスのを使用してみてくださいjava.util.Random。どこでn = 13。しかし、よく見ると、問題は別のところにあるようです。関数は確かにランダムな値を返していますが、他の場所で適切に使用していません。

于 2013-10-04T10:23:38.410 に答える