Enter an integer: 1492 OK Enter an integer: Fourteen ninety two WRONG Enter an integer: 14.92 WRONG Enter an integer: 1492. WRONG Enter an integer: -1492 OK Enter an integer: 1 4 9 2 MAYBE , but only the '1' will be scanned Enter an integer: 17 OK Enter an integer: +17 OK Enter an integer: 017 OK Enter an integer: +017 OK
The last four inputs will each be converted to the same 32-bit int. There is only one way that seventeen can be represented as a 32-bit int, but a variety of ways it can be written in characters.
InputMismatchException
If the user enters one of the WRONG lines, the statement
num = scan.nextInt()
will not be able to scan the characters as an integer. It with throw an exception. You will see something like the above.
This exception was passed out of the running program to the Java system, which stopped the program and wrote the error messages.
At what line of your program did the problem occur? (Inspect the error message from the program.)