0
Почему выход продолжает работать? Когда я запускаю эту программу, и я вхожу в выход, она продолжает работать и не позволяет мне вводить больше чисел. Почему это происходит?Выход продолжает работать
import java.util.InputMismatchException;
import java.util.Scanner;
public class ExceptionTest2
{
public static void main(String[] args)
{
Scanner st = new Scanner(System.in);
int ab, bd, cde;
ab = bd = cde = 0;
boolean infinite, in;
do
{
System.out.println("Enter the numbers to divide");
infinite = false;
in = true;
try
{
ab = st.nextInt();
bd = st.nextInt();
infinite = false;
in = true;
}
catch (InputMismatchException e)
{
System.out.println("Invalid input");
in = true;
}
finally
{
if (in)
{
try
{
System.out.println("I am in try block before exception");
cde = ab/bd;
System.out.println("I am in try block after exception");
}
catch (Exception e)
{
infinite = true;
}
finally
{
if (!infinite)
{
System.out.println("Answer is " + cde);
};
}
}
}
}
while (cde != 100);
st.close();
}
}
Какая линия продолжает работать? Кроме того, в будущем это поможет вам значительно использовать более описательные имена переменных. – Zyerah
что вы ввели? Может быть, 'cde' никогда не было 100. – Henry
Я только что запустил это, и он работал отлично для меня (ну, кроме того, что дал мне результаты с целым делением). Это позволило мне ввести дополнительные числа, чтобы разделить только штраф. Можете ли вы привести нам пример вашего ввода и пример вывода, который вы получаете? – therealrootuser