费波拉奇数列,相信大家都听过,但就这个小小的程序,如果你把它的数值调大的一点,然后。。。听听大多数CPU疯狂转动的声音,WOW,不知整了多少班上的女同学------每天都跑来找我们,“这怎么回事啊,快帮我解决一下 “ - // 费波拉奇数列:从0和1开始,后续的每个费波拉奇数字都是前两个数字的和
- 9 m9 z' C4 i+ q' U
- #include <iostream>+ t! J3 ~* x% A. k1 `
- 4 I3 y' {+ d+ t# F\\" X0 o6 Z+ A9 X- c
- using std::cout;0 v3 k% U: m' S+ r9 r0 X
- using std::cin;) j# K: P6 W! I' u
- using std::endl;' x5 x0 R! c# |5 z3 j
- & ?\\" _4 K# c' k, k% X
- 9 F; `1 r\\" r4 r0 H- B
- unsigned long fibonacci( unsigned long );( c0 Y' g, A5 `* W a) }0 O* t1 o' d
- ! x$ G/ _: a/ x# a$ ?\\" \: [) {
- int main( void )0 |2 C g* h/ b
- {
- + P, l: ~9 z# M$ e& |
- unsigned long result, number;; i; F* H8 {1 T) T\\" s7 A0 l
- 5 V7 e' o, D: E- E% ]! g6 G, D! M
- cout << "Enter an integer: ";
- $ k; ]& I2 H; S2 @5 m# S\\" ~5 I: K
- cin >> number;5 J& C5 |4 t/ T\\" P& i
- result = fibonacci( number );
- : M8 { r E7 X! p
- cout << "Fibonacci( "<< number << " ) = " << result << endl;
- Y' @' S5 V9 l }6 {
- return 0;1 S' K0 e+ t! u# d: G; Q# `0 O9 y
- }: T. O# D; Q; F$ c
- # i4 E' X! c2 \% Z
- unsigned long fibonacci( unsigned long n )6 Y\\" v- l$ b$ p# }\\" i
- {) O R! C# U5 H4 \# c: j. L- ~: n4 ~$ j
- if ( n == 0 || n == 1 )& ], l& x4 I; G
- return n;4 u0 C D$ F# U, z* i; @3 y
- else
- . P) i9 ?, S% Y! x# I& G* K
- return fibonacci( n -1 ) + fibonacci( n - 2 );- F; r' ?% P\\" n8 q2 v1 X& V. _
- }
- - h/ i8 ]3 ~# v\\" _! `\\" A\\" y
|