`while` 흐름
0회 가능
처음부터 거짓이면 건너뜁니다.
조건이 참인 동안 작업합니다.
다음 조건을 바꿀 값을 준비합니다.
두 반복문 모두 조건이 바뀌어야 끝납니다. 차이는 본문을 실행하기 전에 조건을 검사하는지, 실행 후에 검사하는지입니다.
0회 가능
처음부터 거짓이면 건너뜁니다.
조건이 참인 동안 작업합니다.
다음 조건을 바꿀 값을 준비합니다.
최소 1회
조건과 무관하게 먼저 실행합니다.
사용자 입력이나 카운터를 바꿉니다.
끝의 `while (조건);`에서 반복을 판단합니다.
읽을 데이터가 있을 때만 처리한다면 `while`이 자연스럽습니다.
일단 보여주고 선택을 받은 뒤 반복 여부를 묻는 흐름은 `do-while`에 맞습니다.
조건에 쓰는 변수나 입력이 본문에서 실제로 바뀌는지 확인합니다.
`do { ... } while (조건);`처럼 마지막 세미콜론이 문장의 일부입니다.
선검사·후검사 실행 전에 조건을 검증해야 하면 `while`, 적어도 한 번의 본문 실행이 요구사항이면 `do-while`을 고릅니다.