#include <stdio.h>

 

unsigned int Fibonacci(unsigned int n)

{

    if(n<2)

        return n;

    else

        return Fibonacci(n-1)+Fibonacci(n-2);

}

 

 

int main()

{

    int i;

    int j;

    scanf ("%d", &j);

    for( i=0; i<=j; i++)

        printf("Fibonacci(%d) = %d\n", i, Fibonacci(i));

    

    return 0;

}

 

j가 40대를 넘어서 부터 시간이 오래 걸리더군요... 재귀를 사용하지 않으면 더 빠른걸로 알고 있습니다만...

 

(http://slow-down.tistory.com/118 를 참조하였습니다. 문제시 삭제 하겠습니다.)

 

 

//

//  File.c

//  example2

//

//  Created by 김 일호 on 13. 4. 11..

//  Copyright (c) 2013년 김 일호. All rights reserved.

//

 

#include <stdio.h>

 

 

int main()

{

    int a=0;

    unsigned int i=0;

    unsigned int j=1;

    unsigned int q=0;

    unsigned int k;

    scanf("%d", &k);

    

    for(a=0; a<k; a++)

    {

    printf("Fibonacci(%d) %5d\n",a+1, j);

        q = i + j;

        i = j;

        j = q;

    }

    return 0;

}

 

이건 문제 없다만 unsigend int 형 범위를 벗어나 버린다.

'Programing > C' 카테고리의 다른 글

간단한 스택 구현  (0) 2015.09.12
scanf를 %s와 %c로 받는 차이  (0) 2015.02.10
2차원 배열 함수 인자로 넘기기 예제  (0) 2015.02.10
전치행렬 구현  (0) 2015.02.10
십진수 127까지 이진화  (0) 2015.02.10
Posted by kimmayer

블로그 이미지
IT 기술들 정리, 독후감을 주로 남깁니다!
kimmayer

공지사항

Yesterday
Today
Total

달력

 « |  » 2024.4
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30

최근에 올라온 글

최근에 달린 댓글

최근에 받은 트랙백

글 보관함