AP CSA 2.7 Debugging: One Short, Every Time

Unit 2: Selection and Iteration · Lesson 2.7 · Debugging

One Short, Every Time

while Loops. This is not a blank editor: it is someone else's attempt. Find what is wrong, fix it, and submit to be graded against hidden test cases.

Why debugging is its own skill

This loop terminates, which is the good news. It just does the wrong amount of work, and the accumulator is updated in the wrong order, so both the count and the total are off. Neither mistake announces itself.

What is wrong with it

  1. The program should print every integer from 1 through n. It stops at n - 1 because the condition excludes n itself. Fix the condition.
  2. The running total is supposed to be the sum of every number printed. The counter is increased BEFORE the value is added, so the first number is never counted and an extra one is. Move the update so the total matches what was printed.
  3. Do not convert this to a for loop. The exercise is about getting a while loop right.

The program reads

A single positive integer n.

The program should print

The integers from 1 through n, one per line, then the sum of those integers on the last line.

Worked examples

These show what the FIXED program should print. There are more cases you cannot see, and they use different values, so patching around just these numbers will fail.

Example 1 input
5
Example 1 output
1
2
3
4
5
15
Example 2 input
1
Example 2 output
1
1

Your answer

Main.java

Input for the Run button

Run sends whatever is in the code box below, bugs and all, so you can see the crash or the wrong answer for yourself before you fix anything.


  

  

Stuck?

Hint 1

Trace n = 3 on paper with two columns, i and total, writing a new row every time the body runs. The starter never prints 1 at all, because i is incremented before the first println. The first thing the body does should be the work, not the update.

Hint 2

A counting while loop has a fixed shape: initialize before, test at the top, do the work, update last. Moving the update to the top is what skips the first value.

Hint 3

i <= n and i < n differ by exactly one iteration. When the spec says through n inclusive, the condition has to let n into the body.

Where to go next

Get in Touch

Whether you're a student, parent, or teacher — I'd love to hear from you.

Just want free AP CS resources?

Enter your email below and check the subscribe box — no message needed. Students get daily practice questions and study tips. Teachers get curriculum resources and teaching strategies.

Typically responds within 24 hours

Message Sent!

Thanks for reaching out. I'll get back to you within 24 hours.

🏫 Welcome, fellow educator!

I offer curriculum resources, practice materials, and study guides designed for AP CS teachers. Let me know what you're looking for — whether it's classroom materials, a guest speaker, or Teachers Pay Teachers resources.

Email

[email protected]

📚

Courses

AP CSA, CSP, & Cybersecurity

Response Time

Within 24 hours

Prefer email? Reach me directly at [email protected]