기대 범위
1
2
3
4
5
합계 15
기대 범위는 1부터 5까지지만 실제 루프는 0부터 4까지만 더한다. 빠진 값과 잘못 들어간 값을 나란히 보면 수정 방향이 바로 보인다.
합계 15
합계 10
| 관찰 지점 | Watch 값 | 판단 |
|---|---|---|
| 반복 시작 | i = 0total_sum = 0 |
1부터 더해야 하는 요구와 다르다. |
| 마지막 실행 | i = 4total_sum = 10 |
아직 5가 더해지지 않았다. |
| 종료 조건 | 5 < 5가 거짓 |
조건이 마지막 값을 제외한다. |
수정: for (int i = 1; i <= max_val; ++i)처럼 시작값과 종료 조건을 요구 범위와 맞춘다.