← Back

Home β€Ί Problems β€Ί Operator precedence

Operator precedence

🧠 Predict the output Topic: functions Difficulty: easy Free

What this problem practises

Function bugs are mostly about names and values: positional argument order, default parameters evaluated once at definition time, local versus global scope, and the implicit None returned whenever a function has no return.

This is an output-prediction problem: read the snippet carefully and write down exactly what it prints before anything runs. These questions are interview staples because they test whether you know the language rules, or merely recognise their syntax.

Difficulty: easy β€” the fix or the trick is normally a single line, and a careful read should be enough.

The challenge

The code runs in PyDebug’s in-browser compiler. Open the problem, run the snippet, watch the exact error or output, and keep iterating until it is right. Signed-in solves count toward XP and your daily streak.

The snippet

The interactive editor pre-fills exactly this code β€” read it, then submit your prediction:

print(2 + 3 * 4)
print((2 + 3) * 4)
print(10 - 2 - 3)

Understand the rule

This PyDebug exercise focuses on operator precedence. It is a small reproducible Python debugging task: identify the input and expected state, then predict each statement before changing code. When output differs, inspect types, boundaries, mutation, and control flow instead of guessing.

How to trace it

  1. Read the prompt and write the expected output for operator precedence.
  2. Run the code mentally, recording values after each loop or function call.
  3. Compare actual and expected states and locate the first divergence.
  4. Make the smallest fix, then test a normal and a boundary case.

Common wrong fixes

Rule to remember

Treat operator precedence as a focused experiment. A reliable solution explains the output, handles its edge case, and can be verified with a small test in the browser editor.

Solve it in the interactive editor β†’

πŸ”’ Learning path: Variables and Data Types

Problem 9 of 13 in this path. Work them in order β€” each one builds on the rule before it.

← Integer division and moduloNext in path: not operator with different types β†’

More functions problems

Keep going