费波拉奇数列,相信大家都听过,但就这个小小的程序,如果你把它的数值调大的一点,然后。。。听听大多数CPU疯狂转动的声音,WOW,不知整了多少班上的女同学------每天都跑来找我们,“这怎么回事啊,快帮我解决一下 “ - // 费波拉奇数列:从0和1开始,后续的每个费波拉奇数字都是前两个数字的和- R2 l. j9 m0 x5 g# R, Q2 N, y
- #include <iostream>0 d2 X1 t3 a1 ^# z1 v- [& B7 v
- 4 c. v) N2 d( L: d* w0 t! q _
- using std::cout;3 L& k, a$ z+ G# {( N% U
- using std::cin;
- ! g+ W; l: B0 J\\" {6 j# c8 a4 `9 O
- using std::endl;! @2 k! \0 ^9 N
- 3 t& o6 T% A' L* D* S
- : k q& G1 [ o! A
- unsigned long fibonacci( unsigned long );
- / H! `. y/ s* r9 N! \5 E3 ~6 ]
- ( n! l$ r/ E, x
- int main( void )& l5 ^: I- a) Z( ~! [
- {& i; {8 Z# |\\" Q
- unsigned long result, number;* v3 H% {8 [) f: ?\\" V
- ' b; \' Q. o6 o
- cout << "Enter an integer: ";! u' ~8 C1 }! r
- cin >> number;
- $ ~4 t4 O* g1 \
- result = fibonacci( number );$ v# ~* C, [9 g
- cout << "Fibonacci( "<< number << " ) = " << result << endl;
- 9 Y2 Y6 N R: E: @
- return 0;
- + u. [: m0 V/ R q
- }
- ' D2 h' r7 \$ y
- 5 Y0 s, b& \. ?6 t0 L& x8 A
- unsigned long fibonacci( unsigned long n )
- + |0 e& X$ A0 i2 @
- {
- , Y$ B& D5 ~0 T
- if ( n == 0 || n == 1 )
- ! ]% M- W8 H+ @+ @
- return n;, e) `( [6 b8 @0 H
- else, [2 k1 c J/ n6 T' e
- return fibonacci( n -1 ) + fibonacci( n - 2 );
- $ a# Q' k\\" q0 O4 {
- } |8 k2 i! k$ J# I+ V
|