费波拉奇数列,相信大家都听过,但就这个小小的程序,如果你把它的数值调大的一点,然后。。。听听大多数CPU疯狂转动的声音,WOW,不知整了多少班上的女同学------每天都跑来找我们,“这怎么回事啊,快帮我解决一下 “ - // 费波拉奇数列:从0和1开始,后续的每个费波拉奇数字都是前两个数字的和0 j- P: @+ {% Q0 c\\" _5 u5 I/ u
- #include <iostream>
- + n0 _' L9 |$ A
- - E0 z6 }\\" r. ^/ f/ u: H6 k5 _
- using std::cout;7 `& U8 l7 [# W, K2 L5 C1 z# I
- using std::cin;1 C) A1 y4 P& `4 O/ N% A1 n7 K
- using std::endl;
- . h# ]2 c8 U8 U& R+ j; j6 U
- 2 T' \7 K& `2 p; \- K8 }! D
- + C% Y# r6 g' E2 ~# g! m
- unsigned long fibonacci( unsigned long );
- % J' J/ P8 O( Y& o
- 8 r1 R0 t3 J! ~! V9 j( I. I2 k
- int main( void )
- 3 w% O+ j1 f! [' E! V
- {
- 4 B1 u; e, s8 Y5 r
- unsigned long result, number;
- ; l# z% J8 l% Q# R/ M. a/ h
- 4 N6 u' D! F9 \# V\\" A, Y\\" a: u
- cout << "Enter an integer: ";# c8 k/ H/ r! L$ _\\" l5 s
- cin >> number;
- - k) J9 |4 |. G x+ \\\" b5 X
- result = fibonacci( number );
- 4 J/ c7 }# g1 T: j\\" R' f% T8 K
- cout << "Fibonacci( "<< number << " ) = " << result << endl;
- + H) J7 p0 c) Z7 V, ]
- return 0;
- ) @& K\\" @( w0 t2 y* u% Q
- }, O# v/ f3 r- a( T! m
- + S: P! n! P, K& H' J) P3 {
- unsigned long fibonacci( unsigned long n )# F: e9 q! e2 p
- {- T3 d% b( e7 {) r; q; X4 u4 I/ r4 s. e
- if ( n == 0 || n == 1 )
- 0 b8 H6 m+ I. W! j% k8 e0 c
- return n;
- 6 i6 ]3 Y) S6 f- [6 H5 U
- else
- * q/ }3 n# b7 a
- return fibonacci( n -1 ) + fibonacci( n - 2 );2 d$ e3 G$ X9 Z, s( v' C
- }/ c5 ~8 S4 X$ n9 q
|