Debugging Examples in CS Thinking
Start with the recap, study the fully worked examples, then use the practice problems to check your understanding of Debugging.
This page combines explanation, solved examples, and follow-up practice so you can move from recognition to confident problem-solving in CS Thinking.
Concept Recap
The systematic process of finding, diagnosing, and correcting errors (bugs) in a program. Debugging involves reproducing the problem, isolating its cause through testing and inspection, applying a targeted fix, and verifying the fix resolves the issue without introducing new problems.
Detective work—observe the wrong output, form a hypothesis, test it, then fix what's wrong.
Read the full concept explanation →How to Use These Examples
- Read the first worked example with the solution open so the structure is clear.
- Try the practice problems before revealing each solution.
- Use the related concepts and background knowledge badges if you feel stuck.
What to Focus On
Core idea: Debugging is systematic: reproduce the bug, isolate the cause, apply a fix, then verify it works.
Common stuck point: The bug might not be where the error appears—trace backward.
Sense of Study hint: When debugging, follow these steps: first reproduce the bug reliably with a specific input. Then narrow down where the problem occurs by adding print statements or using a debugger to inspect variable values. Once you find the faulty line, fix it and test with the original failing input plus other cases.
Common Mistakes to Watch For
Before you work through the examples, skim the mistake guide so you know which shortcuts and sign errors to avoid.
Worked Examples
Example 1
mediumAnswer
First step
See the full worked solution + why-it-works coaching
SetupKey insightWhy it worksCommon pitfallConnection
Example 2
mediumExample 3
mediumExample 4
mediumExample 5
mediumExample 6
mediumExample 7
hardExample 8
hardExample 9
challengePractice Problems
Try these problems on your own first, then open the solution to compare your method.
Example 1
mediumExample 2
mediumExample 3
easyExample 4
easyExample 5
easyExample 6
easyExample 7
easyExample 8
easyExample 9
easyExample 10
easyExample 11
mediumExample 12
mediumExample 13
mediumExample 14
mediumExample 15
mediumExample 16
mediumExample 17
mediumExample 18
challengeExample 19
challengeExample 20
challengeExample 21
mediumExample 22
mediumExample 23
easyExample 24
easyExample 25
easyExample 26
easyExample 27
mediumExample 28
mediumExample 29
mediumExample 30
mediumExample 31
mediumExample 32
mediumExample 33
mediumExample 34
hardExample 35
hardExample 36
hardExample 37
challengeRelated Concepts
Background Knowledge
These ideas may be useful before you work through the harder examples.