Я пытаюсь сделать гадательную игру, в которой я предлагаю пользователю ввести секретный номер, и у него есть 6 попыток сделать это правильно. У меня есть большая часть его, за исключением того, что я не могу заставить его сказать ему, как только он исчерпал свои попытки: «извините, вы закончили, секретный номер x»)Как заставить эту игру угадывать работать?
Мой код:
import java.util.*;
import java.util.Scanner;
public class GuessGame{
static public void main(String[] args)
{
System.out.println("Welcome to the guessing game. I will pick a number between 1");
System.out.println("and 100 and you will try to guess it in 6 tries or less. Here we go: ");
for (int i = 6; i > 0; i--)
{
Random rand = new Random();
int secNumber = rand.nextInt(5);
int theNumber = secNumber;
Scanner s = new Scanner(System.in);
System.out.println("Enter a number: ");
int guess = s.nextInt();
if (guess == theNumber)
{
System.out.println("That's it! You guessed it, the number was: " + theNumber + " and it took you " + (7 - i) + " tries.");
}
while(i > 0) {
if (guess < theNumber)
{
System.out.println("The secret number is bigger than than that. You have " + (i - 1) + " tries left.");
break;
}
else if (guess > theNumber)
{
System.out.println("The secret number is smaller than than that. You have " + (i - 1) + " tries left.");
break;
}
}
Чтобы сообщить пользователю, когда он оставил нулевой попытки, а затем раскрыть секретный номер, я попробовал время (я == 0) { System.out.println (....); } Но это срабатывает сразу после первого предположения.
, но мне нужно что-то явно для случая, когда я равен нулю, т.е. когда догадок будут исчерпаны. – user311302
Я исправил его для вас. –
спасибо! но кажется, что случайное число продолжает меняться по догадкам. Я думал, что это исправлено с переменной «theNumber». Как я могу это исправить? – user311302