while은 상태 갱신 위치를 함께 점검한다

조건 검사, 본문 실행, 상태 갱신, 탈출 조건이 서로 이어져야 반복이 안전하게 끝납니다.

1

초기 상태

조건에 쓰는 값이 루프 전에 준비되는지 본다.

2

검사 시점

실행 전인지 실행 후인지 구분한다.

3

갱신 위치

본문 안에서 조건 값이 실제로 바뀌는지 본다.

4

탈출 경로

false 또는 break에 도달 가능한지 확인한다.

위험while (counter < 5)
counter가 바뀌지 않으면 계속 true입니다.
안전counter++
본문 안의 갱신이 다음 검사에 반영됩니다.