Time: 0:00
Test a custom input to verify an edge case (e.g. empty lists, negative numbers, duplicates).
This bug belongs to the type errors pattern
Totals that concatenate, sorts that put 10 before 9, comparisons that refuse to run.
What went wrong: In Go, dividing two integer variables (part / whole) performs integer division, discarding fractional parts before float64() conversion occurs (1 / 4 evaluates to 0).
The fix: Convert the operands to float64 before dividing: float64(part) / float64(whole).
Remember: Casting after integer division cannot recover lost fractional precision. Cast operands before arithmetic.
The pattern behind it: type errors.
Paste this into any web page or blog post. Visitors fix the bug right there, in their browser.
<iframe src="https://trybughunt.com/embed/2150da26-6a0c-473a-97d5-68a3fbba7840" title="Debugging challenge: Integer division truncates rate calculation" width="100%" height="580" loading="lazy" style="border:1px solid #d4d4d8;border-radius:12px;max-width:760px"></iframe>
<p style="font-size:14px">Debugging challenge from <a href="https://trybughunt.com/challenges/2150da26-6a0c-473a-97d5-68a3fbba7840">TryBugHunt</a></p>