费波拉奇数列,相信大家都听过,但就这个小小的程序,如果你把它的数值调大的一点,然后。。。听听大多数CPU疯狂转动的声音,WOW,不知整了多少班上的女同学------每天都跑来找我们,“这怎么回事啊,快帮我解决一下 “ - // 费波拉奇数列:从0和1开始,后续的每个费波拉奇数字都是前两个数字的和
- 0 G9 v' _4 {/ U4 @. }; R
- #include <iostream>
- ( X' {' a6 M' e& w
- ( @' ^' j8 L) }* a9 c7 E4 P
- using std::cout;9 e3 U8 [3 q6 o1 L
- using std::cin;
- 8 K7 n9 f3 f i. W) i( z3 m- n: a
- using std::endl;) |\\" d+ x9 k6 a/ H7 T$ h$ c4 D
- / D6 g: f) Z M O; X
- + D$ ^. G\\" v) m0 `: ~$ z
- unsigned long fibonacci( unsigned long );
- ; j6 v. c. g2 F' {9 X$ K
- 5 G* _) _) f F D- w1 s( N; T
- int main( void )
- ; x4 L5 q$ \8 P+ x
- {4 a5 g! D! p) y6 |! u
- unsigned long result, number;: K% }6 o- g- ^
- 8 j+ Q\\" V+ N* U8 O1 `
- cout << "Enter an integer: ";: g\\" ]6 h- v6 z- B9 w7 ^) b ]3 Z
- cin >> number;
- 1 V% p0 }5 q$ b
- result = fibonacci( number );
- & M7 g) f2 ]9 ~. M) w; [2 w
- cout << "Fibonacci( "<< number << " ) = " << result << endl;
- + w/ v @1 r\\" l, X% v% H% g, p
- return 0;& Y\\" ^, M6 D6 u\\" E( ~& T
- }
- ! H, D3 U$ |2 Z% w
- 5 A& |% I( A* V0 g
- unsigned long fibonacci( unsigned long n )
- 4 a( ~: f$ q# w
- {$ Q3 m2 g# G! m- h' u# |
- if ( n == 0 || n == 1 )
- 7 v9 F1 @0 ~3 {( [0 F7 d
- return n;
- 5 g G! n7 v7 P P
- else
- {) W, G) D- l, Z# S( N
- return fibonacci( n -1 ) + fibonacci( n - 2 );
- : h1 N4 O# P' ~2 A* q! E
- }; O) J0 X6 C g$ Y& W4 [+ {
|