이번에는 1~100까지 숫자 중에서 짝수의 합만 구해볼까요? 앞서 해본 실습은 모든 i의 값을 total에 누적시켰습니다. 모든 i의 값이 아니라 짝수만 누적시키고 싶은 경우에는 어떤 문법을 사용해야 할까요? 네, 조건문입니다. i를 2로 나누었을 때 나머지가 0이라면 짝수입니다. 홀수라면 0이 아니겠죠? i가 홀수일 경우에는 for 블록 안 내용, 즉 total에 값을 누적시키지 말라는 의미로 continue를 사용합니다.
public class ForExam { public static void main(String[] args) { int total = 0; for(int i = 1; i <=100; i++) { if(i % 2 != 0) { continue; } total = total + i; } System.out.println(total); } }
continue는 반복문에 해당하는 ‘total = total + i’를 실행시키지 않고, 다음 부분으로 넘어갑니다. 여기서는 세 번째 부분인 증감식 ‘i++’로 넘어가는 것이죠. 따라서 i가 1인 경우 continue를 만나 total에 누적되지 않고 1을 더합니다. 그럼 i는 2가 되고, i가 2인 경우 if 문을 수행하지 않기 때문에 total에 누적됩니다. 이렇게 반복해 수행하면 total 변수에는 짝수만 쭉 누적되겠죠? 한번 실행해보겠습니다.
실행결과
2550
5050이 아니라 짝수의 합인 2550을 출력합니다.