gpt4 book ai didi

java - 计数器无法运作时

转载 作者:行者123 更新时间:2023-11-30 03:13:59 25 4
gpt4 key购买 nike

我是Java的新手,正在制作一款猜谜游戏,用户必须猜测0到50之间的一个随机整数。

我正在尝试向游戏中添加一个猜测计数器,以便在“游戏结束”之前为用户提供多达7个猜测。但是,尽管我的while循环,该计数器仍保持在7以上。

如果这是一个重复的问题,我事先表示歉意,但是我的确很简短,无法为我的代码找到合适的答案

这是代码:

package guessinggame;
import java.util.Random;
import java.util.Scanner;
public class GuessingGame {
//Author TC13551


public static void main(String[] args) {
int NumberGuess = 0;
Random randomNumber = new Random();
int randomInt = randomNumber.nextInt(51);
System.out.println("Guess the number between 0 -50:");
int i = 0;
while( i < 8){
do{

Scanner UserGuess = new Scanner(System.in);
NumberGuess = UserGuess.nextInt();
if(NumberGuess < 0 || NumberGuess > 50){
System.out.println("Invalid Input, please enter numbers between 0 and 50");
}
else if(NumberGuess < randomInt){
System.out.println("Guess is too small.");
i ++;
System.out. println("You have made "+i +" guesses out of 7");
}

else if(NumberGuess > randomInt) {
System.out.println("Guess is too big.");
i ++;
System.out. println("You have made "+i +" guesses out of 7");

}
else if(NumberGuess == randomInt){
System.out.println("Correct! You win!");
System.out.println("It took you "+ i + " guesses.");
System.exit(0);
}


}while(randomInt != NumberGuess);


}System.out.println("Game over!");
System.out.println("All 7 Guesses used!");
System.exit(0);

}}

最佳答案

如果您希望在7个猜测之后终止,则应该有一个循环:

do {
....
} while(randomInt != NumberGuess) && (i < 8);


当仅在外部循环中测试 i时,将为用户提供无限数量的猜测,因为只有在用户猜测正确的数字后才离开内部循环。并且只有在离开内循环之后,才测试猜测的数量。

关于java - 计数器无法运作时,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33034128/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com