The first parameter to the INPUT function should always be a character string. But here, you are using a numeric value. So the question and answer hinge around how SAS handles that situation.
SAS takes the numeric value and converts it to character, so that the INPUT function can work. You would already have received a note on the log about a numeric to character to conversion taking place, but didn't realize the implications.
When making a numeric to character conversion, SAS typically uses 12 characters to hold the result. In this case, that would be 7 blanks, followed by 5 digits. When you apply the 10. informat to that result, SAS reads 10 characters (7 blanks, plus the first 3 digits). That's where your 3-digit numbers come from.