费波拉奇数列,相信大家都听过,但就这个小小的程序,如果你把它的数值调大的一点,然后。。。听听大多数CPU疯狂转动的声音,WOW,不知整了多少班上的女同学------每天都跑来找我们,“这怎么回事啊,快帮我解决一下 “ - // 费波拉奇数列:从0和1开始,后续的每个费波拉奇数字都是前两个数字的和
- - Y' w+ R' J! t- ^
- #include <iostream>
- 4 c6 U( O( N! X6 @ G9 Z U5 U
- ! A: E( P8 i3 _- S+ L4 e
- using std::cout;# a0 B! i# y8 _0 }/ r
- using std::cin;0 {3 r2 F9 E$ X* _! F* r9 Y
- using std::endl;6 H, R; G% r9 U$ |/ V% J# J4 l' h
- - }& J( b# }4 f# }% m3 m2 {
- 5 M7 c i0 ~8 A6 C$ \2 e
- unsigned long fibonacci( unsigned long );% H' _0 z4 u' u% U) U- b2 ^- v- Y1 B
- ; B6 q0 W& P3 ?1 m
- int main( void )
- 3 R( {5 f# e6 N# b# e
- {2 s7 P+ P6 O, |# D8 {
- unsigned long result, number;
- 0 i& K2 [* X% w( I K. i6 z
- . ~& G1 I) e\\" _
- cout << "Enter an integer: ";4 U, z5 Y/ q, J. ]8 @# I1 Q
- cin >> number;; R$ o1 K f1 w1 I& L
- result = fibonacci( number ); R2 U\\" U3 J# v2 U& n6 h
- cout << "Fibonacci( "<< number << " ) = " << result << endl;( E. Y! I$ [+ |. A\\" L
- return 0;9 u. b$ P j. t
- }
- 6 [6 I9 [& }! |7 ]* u( G
- \\" u+ V: y. H/ O p4 ^
- unsigned long fibonacci( unsigned long n ); ^% {, A1 b0 Z% t6 L# _* ^
- {
- - M( U. V( F1 f# A4 M
- if ( n == 0 || n == 1 )0 Y. r+ S( p8 L' E* Z; R- m, U
- return n;6 r8 r# j& `$ l2 W
- else
- . I( r- U\\" j/ n5 i( p5 e3 s k
- return fibonacci( n -1 ) + fibonacci( n - 2 );6 O- s5 X m, r1 p5 c
- }% Y' E4 g7 s8 s# w( U5 D( A
|