사무자동화산업기사 기출문제·모의고사·오답노트·자동채점

2003년03월16일 54번

[프로그래밍 일반] 프로그램을 구성하는 함수에서 전역 변수를 사용하여 함수의 결과를 반환하는 경우, 함수에 전달되는 입력 파라미터의 값이 같아도 전역 변수의 상태에 따라 함수에서 변환되는 값이 달라질 수 있는 현상을 무엇이라 하는가?

  • ① reference
  • ② side effect
  • ③ aliasing
  • ④ recursive
(정답률: 67%)

문제 해설

정답은 "side effect"이다.

전역 변수를 사용하여 함수의 결과를 반환하는 경우, 함수가 호출될 때마다 전역 변수의 상태가 변할 수 있기 때문에 함수의 결과도 달라질 수 있다. 이러한 현상을 "side effect"라고 한다.

예를 들어, 전역 변수에 저장된 값을 이용하여 계산하는 함수가 있다고 가정해보자. 이 함수는 입력 파라미터로 숫자를 받아서, 전역 변수의 값과 함께 계산한 결과를 반환한다. 그런데, 함수가 호출될 때마다 전역 변수의 값이 변할 수 있기 때문에, 같은 입력 파라미터를 전달하더라도 함수의 결과가 달라질 수 있다. 이러한 현상은 프로그램의 동작을 예측하기 어렵게 만들고, 디버깅을 어렵게 만든다.

따라서, 전역 변수를 사용하는 것보다는 함수 내부에서 지역 변수를 사용하고, 입력 파라미터를 이용하여 계산하는 것이 좋다. 이렇게 하면 함수의 결과가 입력 파라미터에만 의존하게 되어, 예측 가능한 동작을 보장할 수 있다.
AppStore에서 다운로드 APK 다운로드

연도별

진행 상황

0 오답
0 정답