본문 바로가기
Python/코딩도장

코딩도장_파이썬 심사문제 31.5 (재귀호출로 피보나치 수 구하기)

by 비전공자 기록광 2020. 8. 11.
반응형

표준 입력으로 정수 한 개가 입력됩니다(입력 값의 범위는 10~30). 다음 소스 코드를 완성하여 입력된 정수에 해당하는 피보나치 수가 출력되게 만드세요.

피보나치 수는 0과 1로 시작하며, 다음 번 피보나치 수는 바로 앞의 두 피보나치 수의 합입니다.


*피보나치 수열*

f(n) = 1 (n<=2 일 때)
f(n) = f(n-2)+f(n-1) (n>2 일 때)

 

피보나치 수열

이탈리아 수학자 피보나치(Fibonacci)가 발견한 피보나치 수열은 토끼 번식 이야기에서 출발한다. 어떤 남자가 벽으로 둘러싸인 장소에 한 쌍의 토끼들을 둔다. 만약 각 쌍이 두 번째 달부터 매달 �

terms.naver.com

n

0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21...

결과

0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233, 377, 610, 987, 1597, 2584, 4181, 6765, 10946...

 

0>0

1>1

2>1

3>2

4>3

5>5

...


문제

1
2
3
4
5
6
7
8
________________
________________
________________
________________
________________
 
= int(input())
print(fib(n))
cs

 

 

 

입력

10

결과

55

 

입력

20

결과

6765


 

1
2
3
4
5
def fib(n):
    if n<=1:
        return n  #n이 0이면 결과0, 1이면 결과1
    else:
        return fib(n-1)+fib(n-2)
cs

 

반응형

댓글