이번 편의 목표: for와 while로 여러 번의 계산을 반복하고 합계를 구합니다.

같은 문장을 권수만큼 반복할 때 복사해서 붙여 넣지 않습니다. 반복 횟수와 본문을 나눕니다.

for

Java
public class FeeSum {
    public static void main(String[] args) {
        int total = 0;
        for (int day = 1; day <= 3; day = day + 1) {
            total = total + 100;
            System.out.println(day + "일까지 " + total + "원");
        }
        System.out.println(total);
    }
}

day는 1에서 시작해 3까지 1씩 증가합니다. day = day + 1은 day++와 같은 증가입니다. 출력의 마지막 합계는 300입니다.

반복 횟수를 권수로 바꾸면 여러 권의 연체료를 더할 수 있습니다. 배열은 다음 편에서 다루므로, 이번 편은 횟수가 정해진 반복만 사용합니다.

while

종료 조건을 먼저 적고 본문을 반복할 때는 while을 사용합니다.

Java
int left = 3;
while (left > 0) {
    System.out.println("남은 반납 " + left);
    left = left - 1;
}

left가 0이 되면 조건이 거짓이 되어 반복이 끝납니다. 조건을 바꾸지 않으면 반복이 끝나지 않습니다. 연습 중 멈추지 않으면 터미널에서 실행을 중단합니다.

break는 반복을 즉시 끝내고, continue는 이번 차례의 나머지를 건너뜁니다. 연체 일수 합계처럼 모든 값을 더할 때는 둘 다 필요 없습니다.

직접 해 보기

1권부터 4권까지 한 권에 100원씩 더해 총액을 출력하세요. 반복이 끝난 뒤 총액만 한 번 출력합니다.

해설

Java
public class FourBooks {
    public static void main(String[] args) {
        int total = 0;
        for (int count = 1; count <= 4; count++) {
            total = total + 100;
        }
        System.out.println(total);
    }
}

출력은 400입니다.