문제
다음 중 아래의 프로시저가 실행된 후 [A1] 셀에 입력되는 값으로 옳은 것은?
① 10 ② 11 ③ 0 ④ 55
정답
2번
해설
정답: 2. Test가 0에서 시작해 1씩 증가하며, 'Test > 10'이 참이 될 때까지(즉 Test가 11이 되어 조건을 만족할 때) 반복을 멈춘다. 따라서 마지막 Test 값은 11이고 [A1]에 11이 입력된다.
오답 풀이
- 1번: Test가 10일 때 10>10은 거짓이므로 한 번 더 증가해 11이 되어 10은 아니다.
- 2번: Do Until은 조건이 참이 될 때까지 반복하므로 Test=11에서 멈추어 옳다.
- 3번: 초기값 0이 그대로 남는 것이 아니라 반복으로 증가하므로 0이 아니다.
- 4번: 누적 합계(1+2+...)가 아니라 단순 1씩 증가이므로 55가 아니다.
보충 개념 Do Until ... Loop는 조건이 참이 될 때까지 반복한다. 조건 'Test > 10'이 참이 되는 순간 Test=11이므로, 반복은 Test가 11이 된 직후 종료된다.