Здравствуйте, я делаю игру и пытаюсь ее запрограммировать, чтобы пользователь думал о случайном числе, а программа пытается его угадать.Я должен использовать диалоговые окна сообщений (это школьный проект), и он спрашивает пользователя, является ли число слишком высоким, слишком низким или правильным, но когда число слишком мало, он угадывает числа, которые выше.В чем проблема?(Предположим, что счетчик был инициализирован как 0.)
boolean correctGuess = false; // when computer guesses incorrectly, correctGuess is false
String n = JOptionPane.showInputDialog("Is " + progNum + " too high, too low, or correct?", " ");
while(correctGuess == false) // when the computer is guessing
{
if(n.equals("correct")) // if the number is correct
{
count++; // update number of guesses
JOptionPane.showMessageDialog(null, "Yay! " + progNum + " was correct! It took the computer " + count + " guesses."); // correct guess, displays number of guesses
correctGuess= true; // computer guessed the correct number
break; // program stops
}
else if(n.equals("too high")) // number is too high, prog generates lower number
{
count++; // update number of guesses
int max = (progNum - 1); // guess was too high so progNum-1 is the max
int min = 1; // min value is progNum + 1 since progNum is too high
progNum = generator.nextInt((max - min) + 1) + min; // new range for progNum between 1 and progNum1 - 1
String tooHigh = JOptionPane.showInputDialog("Is " + progNum + " too high, too low, or correct?", " "); // asks user
if (tooHigh == null)
return;
}
else if(n.equals("too low")) // number is too low, prog generates higher number
{
count++; // update number of guesses
int max = 100; // generate a range of values for another random guess
int min = (progNum + 1); // min value is progNum + 1 since progNum is too low
progNum = generator.nextInt((max - min) + 1) + min; // new range for progNum between 1 and progNum1 + 1
String tooLow = JOptionPane.showInputDialog("Is " + progNum + " too high, too low, or correct?", " "); // asks user
if (tooLow == null)
return;
}