CHAPTER 43: Trace arithmetic and function exits

Boards: 43a and 43b.
Read the surrounding chapter before this lab. All examples are original and synthetic.

PREDICT
Before running, predict the units of 0.05 and 20.0, and the paths for (120, 0) and (-1, 6). The first pair uses the known chapter numbers. The negative case is caught and printed so it does not hide the next demonstration.

RUN
From the companion root, run:
python visual_labs/ch43/walkthrough.py
Use python3 if that is your configured command.

COMPARE
Compare the printed values and explanations with both boards. Read expected_output.txt after making your prediction. An assert checks a known expected result and stops if it differs. Temporary output folders are removed after the demonstrations; original course files are not edited.

CHANGE ONE THING
Change only the enquiries input from six to three. Expected: cost_per_enquiry(120, 3) is 40.0. Explain that the denominator decreased while cost stayed fixed. Then predict (0, 6): 0.0 is valid and differs from the unavailable result for (120, 0).

EXPLAIN
State which input changed, which instruction handled that change, and why the resulting output is appropriate. If your prediction differs, identify the first step at which it diverges. Return to the surrounding lesson before adding more complexity.
