0

ブラックジャック ゲームで、ダブル ダウンするかどうかを選択するプロンプトをユーザーに表示します。

while(true){
    if(players[i].doubledown == true){
        break;
    }
    System.out.println("Want to double down?\n1)Yes\n2)No\n");
    dd  = IO.readInt();
    if (dd != 1 && dd!= 2){
        IO.reportBadInput();
    }else{
        break;
    }
} 
int x = 0;
if (dd!=1 && players[i].doubledown == false){
    System.out.print("Choose your next move, " + players[i].name + ": \n" + "Points: " + players[i].points + "\n" + "Hint: ");
    getHints(players[i]);
    System.out.print( "\n1)Hit\n2)Stand\n");
    System.out.println();
    x = IO.readInt();
}else if(dd == 1 && players[i].doubledown == true){
    x = 2;
}else if( dd== 1 && players[i].doubledown == false){
    x = 1;
    players[i].doubledown = true;
}




if(x ==2 || x ==1){
    //
    //Stand or Bust
    //

}

なんらかの理由でダブルダウンを要求し続け、その後プレイヤー 2 の番になります。なんで?どんな助けでも大歓迎です。

4

1 に答える 1

1

の場合、このコードは常にプレーヤーにダブルダウンするように要求しplayers[i].doubledownますfalse。そのフラグを設定したコードは表示されないので、質問が続く場合は常にfalseであると思います。

次に答える1と、ifステートメントの3番目のケースに入り、何も出力されないので、プレーヤー2の番になると思います。あなたが答えるなら2、それはあなたに打つか立つように頼むべきです...それは起こりますか?

于 2012-11-26T23:34:41.807 に答える