Я пытаюсь вернуться к главному меню, используя цикл while, и не могу
кажется, заставить его работать. Как я могу реализовать это правильно?
Я пробовал цикл do-while и некоторое время, и он не работает. я делаю
что-то не так, и я не знаю, что это такое
boolean main_menu = true;
while (main_menu) {
System.out.println(" Welcome to Zoos Victoria ");
System.out.println(" M A I N M E N U ");
System.out.println(" Zoo has the following ticketing options:");
System.out.println(" 1 = Child (4-5 yrs) ");
System.out.println(" 2 = Adult (18+ yrs) ");
System.out.println(" 3 = Senior (60+ yrs) " + "\n" );
do {
// select ticket option
System.out.println(" Please enter your option:" );
ticket_option = input.nextInt();
switch (ticket_option) {
// Child_ticket
case 1:
ticket_price = child_ticket;
ticket_name = " Child tickets";
break;
// adult ticket
case 2:
ticket_price = adult_ticket;
ticket_name = " Adult tickets";
break;
//senior ticket
case 3:
ticket_price = senior_ticket;
ticket_name = " Senior tickets";
break;
default:
System.out.println("Invalid entry!");
}
} while( ticket_option > 3); //end of do while loop
System.out.println(" Enter the number of tickets you would like:");
ticket_amount = input.nextInt();
total_price = ticket_amount * ticket_price;
System.out.println(" you are purchasing " + ticket_amount +
ticket_name + " at " + "$"+ticket_price + " each!");
System.out.println(" Press 1 to confirm purchase");
confirm_purchase = input.nextInt();
if (confirm_purchase == 1)
System.out.println("Total amount payable: "+ "$"+total_price);
else {
System.out.println("invalid key!");
main_menu = false;
}
if (confirm_purchase == 1 ) {
System.out.println("Total amount payable: "+ "$"+total_price);
main_menu = false;
} else {
System.out.println("invalid key!");
}
System.out.println("Would you like to go back to the main menu?(Y/N) ");
to_continue = input.next().toUpperCase();
if (to_continue.equals("Y")){
// back to main menu here
System.out.println("Back to the main menu");
} else {
System.out.println("Total amount payable: "+ "$"+total_price);
System.out.println("Have a great time!");
}
}// end while loop
}
}
В операторе if пользователь должен нажать 1, если нет, программа вернется в главное меню. В настоящее время это не работает должным образом.