프로그래밍의 기초(의사 코드 트레이스)
배열의 인덱스는 1부터 시작한다. 다음 프로그램을 실행한 후의 배열 a의 내용은?
integer array: a ← {5, 1, 4, 2, 3}
integer: t ← a[1]
for (i from 1 to 4 step 1)
a[i] ← a[i + 1]
endfor
a[5] ← t
- A{1, 4, 2, 3, 5}
- B{1, 4, 2, 3, 3}
- C{3, 5, 1, 4, 2}
정답과 해설 보기
정답: A. {1, 4, 2, 3, 5}
맨 앞의 값 5를 t에 대피시킨 후, a[i] ← a[i + 1]로 각 요소를 하나씩 앞으로 당깁니다. i를 작은 쪽부터 진행하므로 덮어쓰기 전의 값이 차례로 앞으로 옮겨져 {1, 4, 2, 3, 3}이 됩니다. 마지막으로 a[5] ← t로 끝에 5를 넣어 {1, 4, 2, 3, 5}가 됩니다. 전체를 왼쪽으로 하나 회전시키는 처리입니다.