Я строю угадывающую игру со строками. Концепция довольно проста. У меня ограниченное количество попыток, определяемых константой Java (C_Max_Trials = 10), и когда количество догадок достигает этой константы, приложение должно выйти. Единственное, что я должен использовать эту константу, это часть моего университетского задания.переменная равно константе в Java
Моя проблема заключается в том, что Java не будет рассматривать мои заявления:
if (nrOfGuesses == C_Max_Trials) {
System.out.println("Sorry you are out of tries");
System.exit(0);"
Если я ставлю
nrOfGuesses == 0
он будет работать нормально. Если я позволю
nrOfGuesses == C_Max_Trials
, то он не будет останавливаться на 10 догадок, и он будет двигаться дальше не догадывается не -1, -2, -3 .... продолжая цикл.
Я прикрепляю свой код ниже. Также, если у вас есть какая-либо другая обратная связь относительно кода, это будет оценено по достоинству. Я только начинаю с кодирования.
Спасибо!
Мой код:
public class Assignment4 {
public static final int C_Max_Trials = 10;
//Start Game
String correctName = "X";
boolean finished = false;
int nrOfGuesses=10;
while (!finished) {
Scanner keyboard = new Scanner(System.in);
System.out.print("Please guess the name: ");
String name = keyboard.nextLine();
if (name.equals(correctName))
{
finished = true;
System.out.println("Congratulations! You have guessed the name in "
+ nrOfGuesses+ " tries!");
System.exit(0);
}
--nrOfGuesses;
if (nrOfGuesses == C_Max_Trials) {
System.out.println("Sorry you are out of tries");
System.exit(0);
}
System.out.println("Sorry, you haven't guessed the name. You have "+
nrOfGuesses + " left. Please try again:");
}
}
}
Сообщение с классом Assignment4 обязательно должно быть помечено как домашнее задание. –
Вы ничего не делаете здесь. Что ты упускаешь? –