费式数列
Fibonacci為1200年代的歐洲數(shù)學(xué)家,在他的著作中曾經(jīng)提到:「若有一只免子每個月生一只小免子,一個月后小免子也開始生產(chǎn)。起初只有一只免子,一個月后就有兩只免子,二個月后有三只免子,三個月后有五只免子(小免子投入生產(chǎn))......。
如果不太理解這個例子的話,舉個圖就知道了,注意新生的小免子需一個月成長期才會投入生產(chǎn),類似的道理也可以用于植物的生長,這就是Fibonacci數(shù)列,一般習(xí)慣稱之為費氏數(shù)列,例如以下: 1、1 、2、3、5、8、13、21、34、55、89......
解法
依說明,我們可以將費氏數(shù)列定義為以下:
fn = fn-1 + fn-2 ??if n > 1
fn = n ?if n = 0, 1
#include <stdio.h> #include <stdlib.h> #define N 20 int main(void) { int Fib[N] = {0}; int i; Fib[0] = 0; Fib[1] = 1; for(i = 2; i < N; i++) Fib[i] = Fib[i-1] + Fib[i-2]; for(i = 0; i < N; i++) printf("%d ", Fib[i]); printf("\n"); return 0; }?
總結(jié)