프로그래밍의 기초(의사 코드 트레이스)

x를 3배 하는 것을 반복하는 다음 프로그램을 실행한 후의 n의 값은?

integer: x ← 1, n ← 0
while (x < 100)
  x ← x × 3
  n ← n + 1
endwhile
  1. A4
  2. B5
  3. C6
정답과 해설 보기

정답: B. 5

x와 n의 값을 트레이스 표에 적어 보면, 반복할 때마다 x는 3, 9, 27, 81, 243으로 바뀌고 n은 1씩 늘어납니다. x = 81일 때는 아직 x < 100이 성립하므로 한 번 더 실행하여 x = 243, n = 5가 됩니다. 다음 판정에서 x < 100이 거짓이 되어 반복을 빠져나갑니다. 조건 판정은 6회 이루어지지만, 안쪽 처리가 실행되는 것은 5회입니다.

이 분야 연습하기 분야로 돌아가기

프로그래밍의 기초(의사 코드 트레이스)의 다른 문제

  1. i를 2씩 늘리는 다음 for 문을 실행한 후의 s의 값은?
  2. 안쪽 반복의 초기값이 바깥쪽 변수 i로 정해지는 다음 이중 루프를 실행한 후의 c의 값은?
  3. 이중 루프 안에 조건 분기가 있는 다음 프로그램을 실행한 후의 c의 값은?
  4. 배열 a의 모든 요소의 합계를 구할 생각으로 다음 프로그램을 작성했다. 배열의 인덱스는 1부터 시작한다. 실행한 후의 s의 값은?
  5. 배열의 인덱스는 1부터 시작한다. 최대 요소를 찾는 다음 프로그램을 실행한 후의 m의 값은?