このアプリケーションは数字を推測するゲームです。私の問題は、ユーザーが乱数を正しく取得したときに、「y」と入力しても続行するかどうかをユーザーに尋ね、新しい乱数を作成して推測するように求めることです。次に、ユーザーに「番号を入力してください」と尋ねる必要があります。代わりに私は得る
「高すぎる」(または「低すぎる」)
「番号を入力してください」
ex出力:
番号を入力してください:
2
正解です。数は2でしたあなたは2回の試みでそれを手に入れました。
もう一度プレイしますか(y / n):
y
低すぎます!再試行。
番号を入力してください:
彼が数字を入力した後に決定されると思われる「高すぎる」または「低すぎる」を印刷せずに、質問と同じようにするにはどうすればよいですか?
ps。私は多くの方法を試しましたが、行き詰まっています:(
public static void main(String[] args) {
System.out
.println("Welcome to the gussing game, Try to guess the number am thinking of to win!");
System.out
.println("++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++");
System.out.println();
System.out
.println("Am thinking of a number between 0 and 10. Try to guess it.");
System.out.println();
Scanner sc = new Scanner(System.in);
String choice = "y";
double rightNum = Math.random() * 10;
int randomNum = (int) rightNum; // convert the random number to int
int tries = 0;
while (!choice.equalsIgnoreCase("n")) {
System.out.println("Enter the Number:");
int guess = sc.nextInt();
tries++;
if (guess == randomNum) {
System.out.println("Correct you've got it! The Number Was "
+ randomNum);
System.out.println("You got it in " + tries + " tries.");
System.out.println("Would you like to play again (y/n):");
choice = sc.next();
if (choice.equalsIgnoreCase("y"))
// reset the random number
{
rightNum = Math.random() * 10;
randomNum = (int) rightNum;
tries = 0;
}
}
if (guess > randomNum + 10) {
System.out.println("Way to high! Try again.");
} else if (guess < randomNum) {
System.out.println("Too low! Try again.");
} else if (guess > randomNum && guess <= randomNum + 10) {
System.out.println("Too high! Try again.");
}
}
}
}