If we’re to assume no except block, or that the except statement will allow the program to continue, then that should be explicitly mentioned. It’s only in that case, that would 3 & 4 be correct.
Since it gives you some code and asks about which lines should be surrounded by try block, no mention for except or requiring you to add new code that isn’t part of the original code or the answers.
The main purpose of the question is that you get the line that might cause an error, along with the lines that depend on it.
Since print(cel) can be executed with cel = 0, it can be outside the try block.
Throughout the lesson, at no point was a try block isolated without an except to follow up. I assume that we’re not being taught to use improper syntax in our code, so it’s feasible to then assume we’re also expected to include the except portion of the try block.
It’ll even throw a syntax error when attempting to run two try calls consecutively without having an ‘except’ or ‘finally’ block in between.
If the intent of the question is to alert the mind to identify which lines of code could cause a traceback error, then it should say that, and explicitly mention that we’re assuming the code will continue and not correct or quit after any mistakes. Saying which line(s) of could should be surrounded by a try block is too vague. You cannot run the second try line without an except line preceding it. And in the example excercises, the except line had a quit() function call. Meaning the second line that requires a try would either have been fixed in order to proceed, or the program would have quit. Unless of course we’re assuming that the except line runs pass or something similar. But that’d be a bad practice and I’m sure we’re not being taught that either.