Программа не работает как нужно(Не понимаю , как считанное значение после проверки проверить)
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
int range = 11;
int randomNumber = (int) (Math.random() * range);
int count, i;
int tries = 4;
System.out.println("Твоя задача угадать число от 0 до 10");
System.out.print("Введите ваше число --> ");
for (i = 0; i < tries; i++) {
count = scanner.nextInt();
attempt(randomNumber, count, i + 1, tries, scanner);
if (i == 3) {
System.out.println("Вы потратили все 4 попытки");
System.out.println("Заданное число было " + randomNumber);
break;
}
}
}
static int attempt(int randomNumber, int count, int remainingTries, int tries, Scanner scanner) {
remainingTries = tries - remainingTries;
int temp;
while (true) {
System.out.println("Please enter your number: ");
if (scanner.hasNextInt()) {
temp = scanner.nextInt();
break;
} else {
System.out.println("Wrong data. Please try again");
scanner.next();
}
}
if (randomNumber == count) {
System.out.println("Ты угадал это число!: " + randomNumber);
System.exit(0);
} else if (randomNumber < count) {
System.out.println("Не верно! Мое число меньше твоего " + count);
System.out.println("Осталось попыток: " + remainingTries);
} else if (randomNumber > count) {
System.out.println("Не верно! Мое число больше твоего " + count);
System.out.println("Осталось попыток: " + remainingTries);
}
return temp;
}
}
Ответы (1 шт):
Автор решения: Alerto
→ Ссылка
public static void main(String[] args) {
int range = 11;
int randomNumber = (int) (Math.random() * range);
System.out.println("Введите число от 1 до 50:");
Scanner newScanner = new Scanner(System.in);
int scannerNumber = newScanner.nextInt();
if (scannerNumber > randomNumber || scannerNumber < randomNumber) {
for (int schetchik = 7; schetchik > 0; --schetchik) {
if (scannerNumber > randomNumber) {
System.out.println("Ваше число больше загаданного Осталось попыток: " + schetchik );
Scanner newscannerT = new Scanner(System.in);
int scannerttwo = newscannerT.nextInt();
scannerNumber = scannerttwo;
}
else if (scannerNumber < randomNumber) {
System.out.println("Ваше число Меньше загаданного. Осталос попыток " + schetchik);
Scanner newscnnaerThr = new Scanner(System.in);
int newScannerThree = newscnnaerThr.nextInt();
scannerNumber = newScannerThree;
}
}
if (scannerNumber == randomNumber) {
System.out.println("Победа!");
}
}
if (scannerNumber > randomNumber || scannerNumber < randomNumber) {
System.out.println("Поражение!");
}
}
int temp;
while (true) {
if (scanner.hasNextInt()) {
temp = scanner.nextInt();
break;
} else {
System.out.println("Wrong data. Please try again");
}