费波拉奇数列,相信大家都听过,但就这个小小的程序,如果你把它的数值调大的一点,然后。。。听听大多数CPU疯狂转动的声音,WOW,不知整了多少班上的女同学------每天都跑来找我们,“这怎么回事啊,快帮我解决一下 “ - // 费波拉奇数列:从0和1开始,后续的每个费波拉奇数字都是前两个数字的和
- 9 Z, Y, p0 ~0 y) [# X' T6 y
- #include <iostream>, m6 S: `' o' u0 a( o* }
- / S& I, n) l6 a
- using std::cout;
- ' N9 y8 y# C# d& z' _\\" c\\" U\\" b3 O( ]
- using std::cin;
- 2 F7 Q* u/ e/ G% u$ V\\" R% }
- using std::endl;
- ) Z- q k* ]9 b7 ?5 p, |
- % e7 Y$ C/ O1 ?- t+ h
- 5 i. K- ?& L* `- `% X) e ]5 U9 k( z4 x
- unsigned long fibonacci( unsigned long );
- 0 e2 `\\" R7 Q# g N% i
- * H+ s) H4 b- W: w' Y
- int main( void )
- 5 U\\" Z! c3 o9 R- K9 N
- {
- 1 [- Z$ O5 `0 x2 K\\" y
- unsigned long result, number;/ z$ N8 D2 ] w T
- : t, ^2 d. k0 k\\" N6 @$ X
- cout << "Enter an integer: ";\\" P9 l' i' b( W& v\\" ~
- cin >> number;5 u. F' h4 }) m; b [
- result = fibonacci( number );# r* ]' Y1 A\\" j/ i4 e
- cout << "Fibonacci( "<< number << " ) = " << result << endl;
- 0 V\\" c6 O: M. j) ~! X
- return 0;0 x$ g- x9 X) ^\\" K
- }6 e. _7 g. K. |
- - C. ^# V: j0 f- e
- unsigned long fibonacci( unsigned long n )
- ; p1 w5 ]( ]/ a# `( b: r
- {1 E+ x3 J. U0 F
- if ( n == 0 || n == 1 )
- ; a% V* ^7 c% [. y a
- return n;) S% |/ v J& v/ Q
- else- `5 d. X( u, t! s7 ?/ s
- return fibonacci( n -1 ) + fibonacci( n - 2 );
- ; v7 d; H1 \6 L1 h x, r3 Y3 h
- }. b$ R+ W/ h0 y8 Z: d) s, \. h! f
|