これは、推測ゲームの完全なコードの一部です。
public static void Game(){ //Second page of game with option of continue playing when guessed close enough to answer.
Scanner scan = new Scanner(System.in);
GuessingGame testgame=new GuessingGame();
testgame.Generator();
int num = testgame.GetGenNum();
//Produces a random number between 1 and 100 inclusive of 1 and 100
System.out.println("Guess the target integer which is between 1 and 100 inclusive");
int guess=scan.nextInt();
int difference=(guess-num);
while(guess!=num){
int yesCounter=0;
System.out.println("Guess again " +num+" "+difference);
guess=scan.nextInt();
difference=(guess-num);
///something wrong here, shouldnt repeat if difference too big
if(difference<=5||difference>=-5){ //something wrong with the condition, it says its close enough even tho it isnt.
while(yesCounter<1){
System.out.println("Close enough, do you want to keep Guessing? Y/N ");
yesCounter++;
String play = scan.nextLine();
//play=play1;
while(!(play.equalsIgnoreCase("y")))
{
if(play.equalsIgnoreCase("n")){
System.exit(1);
}
else{
if((play.equalsIgnoreCase("y"))){
invalid();
guess=scan.nextInt();
}
else{
Game(); ///TAKE note as it might restart the game with new random integer
}
}
}
}
}
}
出力は次のとおりです。
...................................
遊ぶ?はい/いいえ
y
1 から 100 までの範囲のターゲット整数を推測します
50
もう一度当ててください 44 6
44
十分に近く、推測を続けますか? はい/いいえ
1 から 100 までの範囲のターゲット整数を推測します
...................................
問題は、ユーザーが数字を推測するとき、条件は、推測と生成された数字の差が5以下の場合であり、ユーザーに十分に近いことを伝え、ユーザーが推測を続けたいかどうかを尋ねますが、条件はそうではありませんでした満たされているがまだ実行されている場合、誰か助けてもらえますか?