费波拉奇数列,相信大家都听过,但就这个小小的程序,如果你把它的数值调大的一点,然后。。。听听大多数CPU疯狂转动的声音,WOW,不知整了多少班上的女同学------每天都跑来找我们,“这怎么回事啊,快帮我解决一下 “ - // 费波拉奇数列:从0和1开始,后续的每个费波拉奇数字都是前两个数字的和' z( |: j1 ?/ N# v3 w6 p+ {
- #include <iostream>
- ) F# M# o4 o# f1 j0 L/ \. k
- 4 e; }9 J- \. X/ J
- using std::cout;
- : G4 x g3 [. b% ?5 y8 d' ^
- using std::cin;
- 1 s4 l+ [. N0 ?! R
- using std::endl;
- 7 h3 S, e9 k! M4 Z n
- + x# A' z* h- y% S, A% ^
- % a; t, i& c3 [( R9 Q
- unsigned long fibonacci( unsigned long );
- 7 v4 Q& L/ ^% a1 ]) X% j
- N& D1 b, B4 c3 u% K1 L* X2 |
- int main( void )3 D% S/ g. A. n
- {( F9 h, U\\" B8 q; _1 L! p- f% t
- unsigned long result, number;
- 0 A' A& f& z; b* ^
- $ H; m' r\\" _9 J2 _5 ?* \
- cout << "Enter an integer: ";
- 6 d$ k+ r3 B1 O7 ?
- cin >> number;
- + \# h( f& h2 Y$ b4 A' n# u5 T. |: k, {
- result = fibonacci( number );; k- z2 d; }0 A5 P, @
- cout << "Fibonacci( "<< number << " ) = " << result << endl;
- 4 z: K8 |+ B9 o/ l% J2 W7 {( y
- return 0;6 G\\" F2 ]8 L$ n9 k\\" J; b! e, s4 e) @
- }( F0 }3 B- W1 H+ b3 h( Y/ [$ j0 G- u
- ! |/ ~\\" D1 r3 E1 A8 b' n
- unsigned long fibonacci( unsigned long n ) a5 x) n. K7 O\\" w7 Y% [\\" P
- {4 J1 p\\" g. ~ v, {% q, v$ h3 Z
- if ( n == 0 || n == 1 )
- 8 F/ k! m9 u3 ]5 |# X% j
- return n;
- . j; X! s- j# E\\" ] _8 D
- else
- ) ?8 q( s3 |4 w# `
- return fibonacci( n -1 ) + fibonacci( n - 2 );
- + y$ G$ N) q& c% B# A5 N
- }
- $ t& E0 @9 \\\" f
|