Я пытаюсь создать программу, которая принимает ввод минимального и максимального числа, а затем генерирует случайное число в этом диапазоне. Затем пользователь угадывает число, и если он слишком высок, он выводит messege. Если он слишком низок, он выводит сообщение. Часть, за которой я застрял, - это когда вы правильно угадываете номер, пользователь вводит «Y» или «N», чтобы снова запустить программу.Else-If/While Loop stuck
Мой код выглядит следующим образом:
import java.util.Scanner;
import java.util.Random;
public class GuessingGame_V2
{
public static void main(String[] args)
{
Scanner in = new Scanner(System.in);
System.out.print('\u000C');
int min;
int max;
int userGuess;
int numberGuesses = 1;
System.out.println("Enter the minimum number: ");
min = in.nextInt();
System.out.println("Enter the maximum number: ");
max = in.nextInt();
Random r = new Random();
int randomNumber = r.nextInt(max - min + 1) + min;
System.out.println("Enter your guess: ");
userGuess = in.nextInt();
String guessAgain = ("Y");
while(!guessAgain.equalsIgnoreCase("N"))
{
if(userGuess > randomNumber){
System.out.println("Your guess was to high! Guess again!");
System.out.println("Input your new guess: ");
userGuess = in.nextInt();
numberGuesses++;
}
else if (userGuess < randomNumber){
System.out.println("Your guess was to low! Guess again!");
System.out.println("Input your new guess: ");
userGuess = in.nextInt();
numberGuesses++;
}
else
{
System.out.println("Congratulations, you guessed the number!");
System.out.println("It took " + numberGuesses + " tries");
System.out.println("Guess another number? (Y/N)");
guessAgain = in.next();
}
}
System.out.println("Thank's for playing!");
}
}
Проблема возникает, когда пользователь нажимает кнопку «Y», чтобы перезапустить программу. Он не перезапускается и снова отображает окончательное сообщение. (заявление печати, количество догадок и Y/N). Мне нужна программа для перезапуска, когда пользователь «Y»
Я новичок размещения на сайте .. так что простите меня, если я испортил положить в коде - Заранее спасибо за помощь -
* Изменения - 11/13/13 10:58 Изменен код для ввода более одного ввода и продолжают принимать ввод, пока пользователь не поправит его.
Этот код не позволяет угадывать один раз перед началом новой игры? Если это так, то проблема должна быть исправлена в первую очередь. – OGHaza
Да, вы правы, я действительно играл с кодом немного, прежде чем я разместил его здесь. У меня было так, чтобы вы могли догадываться не один раз, и я изменил его. Спасибо, что привлекли его к моему вниманию! – cdeforest2014