斐波拉契序列

斐波拉契序列是現代書寫數和乘數的位值表示法系統的定理。

基本介紹

  • 中文名:斐波拉契序列
  • 外文名:Fibonacci sequence 
  • 提出者:李奧納多,又稱斐波那契
  • 套用學科:數學.計算機.編程
  • 適用領域範圍:計算機.編程
詳細寫法,詳細算法,推導過程,

詳細寫法

#include<stdio.h>
int main( )
{
int n;
int f1,f2,f3;
int i;
f1=1;
f2=2;
printf("請輸入您需要求的想的序列:");
scanf("%d",&n);
if(1 == n)
{
f3=1;
}
else if(n==2)
{
f3=2;
}
else
{
for(i=3;i<=n;i++)
{
f3=f1+f2;
f1=f2;
f2=f3;
}
}
printf("%d\n",f3);
return 0;
}

詳細算法

n=1
f3=1
n=2
f3=2
n=3
i=3;i<=3;成立
f3=1+2
f1=2
f2=3
++i;4<=3;不成立
f3=3
n=4
i=3;i<=3;成立
f3=1+2
f1=2
f2=3
++i;4<=4;成立
f3=2+3
f1=3
f2=5
++i;5<=4;不成立
f3=5
n=5
i=3;i<=3;成立
f3=1+2
f1=2
f2=3
++i;4<=4;成立
f3=2+3
f1=3
f2=5
++i;5<=5;成立
f3=3+5
f1=5
f2=8
++i;6<=5;不成立
f3=8
n=6
i=3;i<=3;成立
f3=1+2
f1=2
f2=3
++i;4<=4;成立
f3=2+3
f1=3
f2=5
++i;5<=5;成立
f3=3+5
f1=5
f2=8
++i;6<=6;成立
f3=5+8
f1=8
f2=12
++i;7<=6不成立
f3=13

推導過程

比薩的李奧納多,又稱斐波那契(Leonardo Pisano ,Fibonacci, Leonardo Bigollo,1175年-1250年),義大利數學家,西方第一個研究斐波那契數,並將現代書寫數和乘數的位值表示法系統引入歐洲。
斐波那契數列: 斐波那契在《算盤書》中提出了一個有趣的兔子問題: 一般而言,兔子在出生兩個月後,就有繁殖能力,一對兔子每個月能生出一對小兔子來。如果所有兔都不死,那么一年以後可以繁殖多少對兔子? 我們不妨拿新出生的一對小兔子分析一下: 第一個月小兔子沒有繁殖能力,所以還是一對;   兩個月後,生下一對小兔總數共有兩對;  三個月以後,老兔子又生下一對,因為小兔子還沒有繁殖能力,所以一共是三對;  …… 依次類推可以列出下表: 經過月數 0 1 2 3 4 5 6 7 8 9 10 11 12 幼仔對數 0 0 1 1 2 3 5 8 13 21 34 55 89 成兔對數 1 1 1 2 3 5 8 13 21 34 55 89 144 總體對數 1 1 2 3 5 8 13 21 34 55 89 144 233  表中數字1,1,2,3,5,8---構成了一個序列。這個數列有關十分明顯的特點,那是:前面相鄰兩項之和,構成了後一項。 這個數列是義大利中世紀數學家斐波那契在《算盤書》中提出的,這個級數的通項公式,除了具有a(n+2)=an+a(n+1)/的性質外,還可以證明通項公式為:an=1/√5 [(1/2+√5/2)^ n-(1/2-√5/2)^n] (n=1,2,3.....)(√5表示根號 5) 這個通項公式中雖然所有的an都是正整數,可是它們卻是由一些無理數表示出來的。  即在較高的序列,兩個連續的“斐波納契數”的序列相互分割將接近黃金比例(1.618:1或1:0.618)。   例如:233/144,987/610、、、、斐波那契數列還有兩個有趣的性質 1.斐波那契數列中任一項的平方數都等於跟它相鄰的前後兩項的乘積加1或減1;   2.任取相鄰的四個斐波那契數,中間兩數之積(內積)與兩邊兩數之積(外積)相差1.   同樣我們還可以有t階斐波那契數列,通過遞推數列a(n+t)=a(n+t-1)+a(n+t-2)+...+a(n),其中a(1)=a(2)=1,以及對於3-t<=n<=0,有a(n)=0.  給出了t階斐波那契數列的通項公式:  [r^(n-1)(r-1)/((t+1)r-2t)], 其中r是方程x^{t+1}-2x^t+1=0的唯一一個大於1的正數根(可以看出r非常接近2)

相關詞條

熱門詞條

聯絡我們