Не получается решить загадку на Java с вариантами ответов и подсказкой
В задаче следующая загадка:
У пользователя есть 3 попытки, чтобы отгадать загадку.
Если пользователь ввел верный ответ, вывести: “Правильно!” и завершить работу.
Если пользователь ввел неверный ответ на 1 или 2 попытке, вывести “Подумай еще!” и еще раз запросить ответ у пользователя.
Если пользователь сделал 3 неправильных попытки, вывести “Обидно, приходи в другой раз” и завершить работу.
Также пользователь имеет право на подсказку при первой попытке, при этом 2 и 3 попытки уже недоступны. Если на первой попытке он введет строку “Подсказка”, вывести любую подсказку. Если на 2 и 3, вывести “Подсказка уже недоступна”.
Если пользователь, использовавший подсказку, ошибется, вывести “Обидно, приходи в другой раз” и завершить работу.
Не понимаю, как написать в коде так, чтобы после вывода подсказки, 2 и 3 попытка стали бы недоступны. Помогите пожалуйста. Думал, что нужно указать булево выражение для использованной подсказки, но не понимаю, как правильно ее применить.
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
System.out.println("Отгадайте загадку.Сидит дед, во сто шуб одет, кто его раздевает, тот слезы проливает");
Scanner inputAnswer = new Scanner(System.in);
String answer = null;
String advice1;
Boolean answer1;
Boolean answer2;
Boolean answer3;
String advice = "Подсказка: Заразная упакованная гадость";
for (int i = 1; i <= 3; i++) {
answer = inputAnswer.nextLine();
answer1 = answer.equalsIgnoreCase("Zip virus");
answer2 = answer.equalsIgnoreCase("Advice");
if (answer1 == true) {
System.out.println("Правильно!");
break;
}
if (answer2 == true) {
System.out.println(advice);
}
if (answer1==false) {
System.out.println("Подумай еще");
continue;
}
if (answer1 ==false & answer2 == true) ;
{
System.out.println("Обидно, приходи в другой раз");
break;
}
}
}
Ответы (2 шт):
import java.util.Scanner;
public class main {
public static void main(String[] args) {
System.out.println("Отгадайте загадку. Сидит дед, во сто шуб одет, кто его раздевает, тот слезы проливает");
Scanner inputAnswer = new Scanner(System.in);
String answer;
boolean attempt;
int count = 0;
String advice = "Подсказка: Заразная упакованная гадость";
while (count<3) {
answer = inputAnswer.nextLine();
attempt = answer.equalsIgnoreCase("Zip virus");
if (answer.equalsIgnoreCase("Advice")) {
System.out.println(advice);
count = 2;
System.out.println(count);
}else if (attempt) {
System.out.println("Правильно!");
break;
} else if (count<2){
System.out.println("Подумай еще");
count++;
}else{
System.out.println("Обидно, приходи в другой раз");
break;
}
}
}
}