inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

(2026 최신!) 일주일만에 합격하는 정보처리기사 실기

피보나치 예제

해결된 질문

261

김인도

작성한 질문수 23

0

1000022483.jpg출력값 이해가 안되네요

5까지는 맞는데

변수가 5 면

4+3 7 이고

6이면

5+4 9아닌가요.

python java c 정보처리기사

답변 2

0

rokkk

제가 풀이한 내용이 도움이 될지는 모르겠지만 공유드립니다.

if(n<=1){

return n;을 통해 입력값 i(0 ~ 9)까지 순서대로 입력되는데, 0과 1은 return n을 통해 0과 1이 출력됩니다.

이후 입력값 2부터는 n<=1이 거짓이되기 때문에

return fibo(n-1) + fibo(n-2)를 수행하게 되는데, 입력값 2를 입력하게 되면

fibo(2-1) + fibo(2-2), 즉 fibo(1) + fibo(0)을 수행하게 되서 1이 리턴되게 됩니다.

i = 2, 출력값 1

i = 3, fibo(3-1) + fibo(3-2), fibo(2) + fibo(1) // fibo(2) = 1, fibo(1) = 1, 출력값 = 2

i = 4, fibo(4-1) + fibo(4-2), fibo(3) + fibo(2) // fibo(3) = 2, fibo(2) = 1, 출력값 = 3

i = 5, fibo(5-1) + fibo(5-2), fibo(4) + fibo(3) // fibo(4) = 3, fibo(3) = 2, 출력값 = 5

i = 6, fibo(6-1) + fibo(6-2), fibo(5) + fibo(4) // fibo(5) = 5, fibo(4) = 3, 출력값 = 8

i = 7, fibo(7-1) + fibo(7-2), fibo(6) + fibo(5) // fibo(6) = 8, fibo(5) = 5, 출력값 = 13

i = 8, fibo(8-1) + fibo(8-2), fibo(7) + fibo(6) // fibo(7) = 13, fibo(6) = 8, 출력값 = 21

i = 9, fibo(9-1) + fibo(9-2), fibo(8) + fibo(7) // fibo(8) = 21, fibo(7) = 13, 출력값 = 34

 

도움이 되셨으면 좋겠네요.

0

주말코딩

안녕하세요,

우선, 풀이를 설명하기 전에 앞에 5까지 맞았으면, 뒤가 틀릴 수가 없습니다.

왜냐하면 식 자체가 자기보다 하나 1이 작은 수, 2가 작은 수를 더해서 호출하기 때문입니다.

계산식이 잘못되었다면 애초부터 잘못된 값이 산출되었어야 합니다.


해설:

편의상 함수를 f()라고 정의하고 사용하겠습니다.

f(6)에 대해서 질문 주신 것으로 알고 설명드립니다.

f(6)은 f(5) + f(4)로 쪼개집니다.

f(4)는 나중에 처리하는 것으로 하고, f(5) 먼저 같이 해보시죠. ----- 책갈피

f(5)는 다시 f(4) + f(3)으로 쪼개집니다.

f(4) = f(3) + f(2)

f(3) = f(2) + f(1) 이 됩니다.


이를 다시 나누면

f(4) = f(2) + f(1) + f(2) = f(1) + f(0) + f(1) + f(1) + f(0) = 3

f(3) = f(1) + f(0) + f(1) = 2가 됩니다.

이것 두개를 합치는 것이 f(5)가 되었으니 5가 되는 것이고,

f(4)는 위에서 확인한 것처럼 3이었습니다.

이 둘을 더해야했기 때문에 (윗 부분 책갈피) 총 8이 산출됩니다.

 

질문 감사합니다.

 

15분 48초 질문

0

10

1

26-1년도 이론문제 재탕

0

22

1

26-1년도 코드문제 재탕

0

17

0

이론재탕만 눈치챘어도

0

30

1

25-3년도 이론문제 재탕

0

22

1

25-3년도 코드문제 재탕

0

17

0

출력값 문의

0

20

2

25-2 분기커버리지

0

22

0

25-2 이론 재탕

0

31

1

25-1 이론 재탕

0

29

1

서브넷 마스크

0

38

1

모의고사 1회 계산문제 2개 맞았는데

0

56

2

업캐스팅 문제 예시 4번 부모 호출

0

46

2

모의고사 자료 해설이 너무 불친절하네요.

0

87

2

부모의 생성자 출력 관련

0

41

2

24-3 이론파트 재탕문제

0

47

0

누락코드

0

40

1

다차원 배열 포인터 질문있습니다

0

58

3

24-2 이론 파트 재탕

1

55

1

모의고사 5회

0

46

1

12분 10초 func(values, 0, 1)을 넣을 때

0

42

1

모의고사 1회 4번 문제와 관련한 질문이 있습니다.

0

48

2

23- 3 재탕문제

0

69

1

23- 1 재탕문제

0

53

0