다음 프로그램에서 x와 y의 값을 교환할 생각으로 대입문 2개를 작성했다. 실행한 후의 x와 y의 값의 조합은?
integer: x ← 3, y ← 7
x ← y
y ← x
Ax = 3, y = 3
Bx = 7, y = 3
Cx = 7, y = 7
정답과 해설 보기
정답: C. x = 7, y = 7
의사 코드의 대입문은 위에서부터 차례로 하나씩 실행됩니다. x ← y로 x는 7이 되고, 원래 값 3은 이 시점에서 사라집니다. 이어지는 y ← x에서는 새로운 x의 값 7이 y에 들어가므로 x = 7, y = 7이 됩니다. 값을 교환하려면 t ← x, x ← y, y ← t처럼 작업용 변수에 원래 값을 대피시킨 후 대입합니다.