모두CBT

C 언어로 작성된 프로그램의 실행 결과로 옳은 것은?#include &… | [계리직 컴퓨터일반] 19년 1회차 기출문제 상세 페이지

1[계리직 컴퓨터일반] 19년 1회차
C 언어로 작성된 프로그램의 실행 결과로 옳은 것은?
#include <stdio.h>
double h(double *f, int d, double x) {
int i;
double res = 0.0;
for(i=d-1; i >= 0; i--) {
res = res * x + f[i];
}
return res;
}
int main() {
double f[] = {1, 2, 3, 4 };
printf("%3.1f \n", h(f, 4, 2));
return 0;
}
1
11.0
2
26.0
3
49.0
4
112.0
해설

출력 결과는 49.0이다.

함수 h는 호너(Horner) 방식으로 다항식 4x3+3x2+2x+14x^3+3x^2+2x+1의 값을 x=2에서 계산한다.

i=3: res = 0×2+4 = 4
i=2: res = 4×2+3 = 11
i=1: res = 11×2+2 = 24
i=0: res = 24×2+1 = 49
%3.1f 형식이므로 49.0이 출력된다.

  • 11.0: 반복을 두 번(i=3, i=2)만 수행했을 때의 중간값이다.
  • 26.0: 계수를 f[0]부터 높은 차수로 잘못 대응시킨 값(1·8+2·4+3·2+4)이다.
  • 112.0: 반복 횟수나 곱셈 순서를 잘못 추적한 값으로, 실제 계산과 맞지 않는다.

오류나 개정된 내용이 보이면 알려주세요

이어서 풀어보기

[계리직 컴퓨터일반] 19년 1회차 20문항 이어서 보기문제·정답·해설을 한 페이지에서 이어서 볼 수 있어요계리직 컴퓨터일반 기출문제 암기장 전체 보기