컴퓨터 엑셀 워드 포토샵 구글어스 WINDOWS JAVASCRIPT JAVA C++

 
Friday, February 02, 2007

C언어] 피보나치 수열 구하기; Fibonacci Sequence; 피보나치 수(Fibonacci Number)


피보나치 수(Fibonacci Number)를 구하는 C소스입니다. C에는 무한대의 정수를 표현할 수 있는 자료형이 없기에, "unsigned __int64"형을 사용해도
12200160415121876738 (천이백이십경...) 까지밖에는 구할 수 없습니다. 그렇다고 해서 double 같은 실수형을 사용하면 정밀도를 잃게 됩니다.

피보나치수 구하기 예제
파일명: example.cpp
#include <stdio.h>

int main(void) {

  unsigned __int64 a = 0;
  unsigned __int64 b = 1;
  unsigned __int64 temp;


  for (int n = 0; n <= 93; n++) {
    printf("%I64u\n", a);

    temp = a;
    a = b;
    b = temp + b;
  }


  return 0;
}



컴파일 및 실행 결과 화면:
(n = 0 ~ 93 까지만 구할 수 있습니다.)
D:\Z>cl example.cpp && example.exe
Microsoft (R) 32-bit C/C++ Optimizing Compiler Version 13.10.3077 for 80x86
Copyright (C) Microsoft Corporation 1984-2002. All rights reserved.

example.cpp
Microsoft (R) Incremental Linker Version 7.10.3077
Copyright (C) Microsoft Corporation.  All rights reserved.

/out:example.exe
example.obj
0
1
1
2
3
5
8
13
21
34
55
89
144
233
377
610
987
1597
2584
4181
6765
10946
17711
28657
46368
75025
121393
196418
317811
514229
832040
1346269
2178309
3524578
5702887
9227465
14930352
24157817
39088169
63245986
102334155
165580141
267914296
433494437
701408733
1134903170
1836311903
2971215073
4807526976
7778742049
12586269025
20365011074
32951280099
53316291173
86267571272
139583862445
225851433717
365435296162
591286729879
956722026041
1548008755920
2504730781961
4052739537881
6557470319842
10610209857723
17167680177565
27777890035288
44945570212853
72723460248141
117669030460994
190392490709135
308061521170129
498454011879264
806515533049393
1304969544928657
2111485077978050
3416454622906707
5527939700884757
8944394323791464
14472334024676221
23416728348467685
37889062373143906
61305790721611591
99194853094755497
160500643816367088
259695496911122585
420196140727489673
679891637638612258
1100087778366101931
1779979416004714189
2880067194370816120
4660046610375530309
7540113804746346429
12200160415121876738

D:\Z>



여기에 n = 300 까지 구한, 피보나치 수열 표가 있습니다: ▶▶ 피보나치 수열 리스트; Fibonacci Sequence List

2 Comments:
At April 12, 2007 at 8:45 PM, Anonymous Anonymous said...

300까지 구하는 소스는 볼수없나요??

문자열계산으로 구한다는것 같은데 궁금합니다.

 
At April 13, 2007 at 10:40 AM, Blogger mwultong said...

그런 소스를 만들어 보려고 했는데
잘 되지 않더군요 ㅠㅠ

 

Post a Comment

<< Home RSS 2.0 feed

구글 Google 에서 제공하는 무료 블로그 서비스인 블로거 Blogger 의 인터넷 주소는 www.blogger.com 입니다. Blogger 에 블로그를 만들면, blogspot.com 이라는 주소에 블로그가 생성됩니다.
블로그를 직접 방문하지 않고도 최신 게시물을 구독하려면 RSS 2.0 feed 주소를 리더기에 등록하시면 됩니다.
Previous Posts
Monthly Archives
Top