본문 바로가기
프로그램/C언어 1000제

C언어 188제] NCP Nextop Lv.2 피보나치 수(Fibonacci numbers) 2

by 건티 2024. 11. 21.
728x90

출처 : 반크_세계유산 경복궁

 

문제

피보나치 수는 0과 1로 시작한다. 0번째 피보나치 수는 0이고, 1번째 피보나치 수는 1이다. 그 다음 2번째 부터는 바로 앞 두 피보나치 수의 합이 된다.

이를 식으로 써보면 Fn = Fn-1 + Fn-2 (n ≥ 2)가 된다.

n=17일때 까지 피보나치 수를 써보면 다음과 같다.

0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233, 377, 610, 987, 1597

n이 주어졌을 때, n번째 피보나치 수를 구하는 프로그램을 작성하시오.

입력
첫째 줄에 n이 주어진다. n은 90보다 작거나 같은 자연수이다.

출력
첫째 줄에 n번째 피보나치 수를 출력한다.

예제 입력 1 
10
예제 출력 1 
55


출처 : 백준_2748번

 

 

참고풀이]

#include <stdio.h>

int main()
{
    long long int Result;//N번째 피보나치 수 
    long long int a=0;
    long long int b=1;
    int i;

    //N을 입력받아 N번째 피보나치 수를 출력하기. 
    int N;
    scanf("%d",&N);
    if(N>=1 && N<=90)
    {
        for(i=0;i<N;i++)
        {
            Result=a+b;
            a=b;
            b=Result;
        }

        printf("%lld",a);
    }

    return 0;
}

 

참고풀이 결과]

 

 

 

 

 

 

대한민국의 아름다운 영토, 독도의 봄

 

반응형

댓글