@JennyK

Как завершить программу Java при вводе пользователем символа q в любом месте программы?

Задача заключается в написании простенького калькулятора (число-операция-число-результат). Программа должна работать бесконечно, если пользователь вводит корректные данные, но если пользователь вводит букву q то программа должна завершиться (именно завершиться, а не уведомить об ошибке). Вот что у меня пока есть:
public static void main(String[] args) {
    Scanner sc = new Scanner(System.in);
    do {
        System.out.println("Введите число");
        int a = sc.nextInt();
        sc.nextLine();
        System.out.println("Введите операцию");
        String s = sc.nextLine();
        System.out.println("Введите число");
        int b = sc.nextInt();
        if (s.equals("+")) {
            int res = 0;
            res = a + b;
            System.out.println(res);
        }
        char c = s.charAt(0);
        if (c == ('q'))
            break;
       
    } while(true);

Сейчас это работает если вместо математического знака ввести q. Но как мне сделать так, чтобы программа завершалась если пользователь введет q вместо числа?
  • Вопрос задан
  • 122 просмотра
Решения вопроса 1
azerphoenix
@azerphoenix Куратор тега Java
Java Software Engineer
if (c == ('q'))
            break;

тут используйте не break, а System.exit(0);
https://www.tutorialspoint.com/java/lang/system_ex...
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
@Deiwan
Сделайте в конце программы метку и на каждый ввод нацепите слушатель который будет реализовать метод
continue metka;
И когда в любом месте будет введено q программа будет пропускать все что есть и реализовывать то что вы сделаете в той метке.Если что метку создают так -
me1://вначале должна быть обязательно малая буква, а там дальше всё что угодно
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы