1樓:小苒
斐波那契數列,「斐波那契數列」的發明者,是義大利數學家列昂納多•斐波那契(leonardo fibonacci,生於公元2023年,卒於2023年。籍貫大概是比薩)。他被人稱作「比薩的列昂納多」。
2023年,他撰寫了《珠算原理》(liber abaci)一書。他是第一個研究了印度和阿拉伯數學理論的歐洲人。他的父親被比薩的一家商業團體聘任為外交領事,派駐地點相當於今日的阿爾及利亞地區,列昂納多因此得以在一個阿拉伯老師的指導下研究數學。
他還曾在埃及、敘利亞、希臘、西西里和普羅旺斯研究數學。
斐波那契數列指的是這樣一個數列:1,1,2,3,5,8,13,21……
這個數列從第三項開始,每一項都等於前兩項之和。它的通項公式為:(1/√5)*【√5表示根號5】
很有趣的是:這樣一個完全是自然數的數列,通項公式居然是用無理數來表達的。
【該數列有很多奇妙的屬性】
比如:隨著數列項數的增加,前一項與後一項之比越逼近**分割0.6180339887……
還有一項性質,從第二項開始,每個奇數項的平方都比前後兩項之積多1,每個偶數項的平方都比前後兩項之積少1。
如果你看到有這樣一個題目:某人把一個8*8的方格切成四塊,拼成一個5*13的長方形,故作驚訝地問你:為什麼64=65?
其實就是利用了斐波那契數列的這個性質:5、8、13正是數列中相鄰的三項,事實上前後兩塊的面積確實差1,只不過後面那個圖中有一條細長的狹縫,一般人不容易注意到。
如果任意挑兩個數為起始,比如5、-2.4,然後兩項兩項地相加下去,形成5、-2.4、2.
6、0.2、2.8、3、5.
8、8.8、14.6……等,你將發現隨著數列的發展,前後兩項之比也越來越逼近**分割,且某一項的平方與前後兩項之積的差值也交替相差某個值。
斐波那契數列的第n項同時也代表了集合中所有不包含相鄰正整數的子集個數。
【斐波那契數列別名】
斐波那契數列又因數學家列昂納多•斐波那契以兔子繁殖為例子而引入,故又稱為「兔子數列」。
斐波那契數列
一般而言,兔子在出生兩個月後,就有繁殖能力,一對兔子每個月能生出一對小兔子來。如果所有兔都不死,那麼一年以後可以繁殖多少對兔子?
我們不妨拿新出生的一對小兔子分析一下:
第一個月小兔子沒有繁殖能力,所以還是一對;
兩個月後,生下一對小兔民數共有兩對;
三個月以後,老兔子又生下一對,因為小兔子還沒有繁殖能力,所以一共是三對;
------
依次類推可以列出下表:
經過月數:0123456789101112
兔子對數:1123581321345589144233
表中數字1,1,2,3,5,8---構成了一個數列。這個數列有關十分明顯的特點,那是:前面相鄰兩項之和,構成了後一項。
這個數列是義大利中世紀數學家斐波那契在<算盤全書>中提出的,這個級數的通項公式,除了具有a(n+2)=an+a(n+1)/的性質外,還可以證明通項公式為:an=1/√[(1+√5/2) n-(1-√5/2) n](n=1,2,3.....)
【斐波那挈數列通項公式的推導】
斐波那契數列:1,1,2,3,5,8,13,21……
如果設f(n)為該數列的第n項(n∈n+)。那麼這句話可以寫成如下形式:
f(1)=f(2)=1,f(n)=f(n-1)+f(n-2) (n≥3)
顯然這是一個線性遞推數列。
通項公式的推導方法一:利用特徵方程
線性遞推數列的特徵方程為:
x^2=x+1
解得x1=(1+√5)/2, x2=(1-√5)/2.
則f(n)=c1*x1^n + c2*x2^n
∵f(1)=f(2)=1
∴c1*x1 + c2*x2
c1*x1^2 + c2*x2^2
解得c1=1/√5,c2=-1/√5
∴f(n)=(1/√5)*【√5表示根號5】
通項公式的推導方法二:普通方法
設常數r,s
使得f(n)-r*f(n-1)=s*[f(n-1)-r*f(n-2)]
則r+s=1, -rs=1
n≥3時,有
f(n)-r*f(n-1)=s*[f(n-1)-r*f(n-2)]
f(n-1)-r*f(n-2)=s*[f(n-2)-r*f(n-3)]
f(n-2)-r*f(n-3)=s*[f(n-3)-r*f(n-4)]
……f(3)-r*f(2)=s*[f(2)-r*f(1)]
將以上n-2個式子相乘,得:
f(n)-r*f(n-1)=[s^(n-2)]*[f(2)-r*f(1)]
∵s=1-r,f(1)=f(2)=1
上式可化簡得:
f(n)=s^(n-1)+r*f(n-1)
那麼:f(n)=s^(n-1)+r*f(n-1)
= s^(n-1) + r*s^(n-2) + r^2*f(n-2)
= s^(n-1) + r*s^(n-2) + r^2*s^(n-3) + r^3*f(n-3)
……= s^(n-1) + r*s^(n-2) + r^2*s^(n-3) +……+ r^(n-2)*s + r^(n-1)*f(1)
= s^(n-1) + r*s^(n-2) + r^2*s^(n-3) +……+ r^(n-2)*s + r^(n-1)
(這是一個以s^(n-1)為首項、以r^(n-1)為末項、r/s為公差的等比數列的各項的和)
=[s^(n-1)-r^(n-1)*r/s]/(1-r/s)
=(s^n - r^n)/(s-r)
r+s=1, -rs=1的一解為 s=(1+√5)/2, r=(1-√5)/2
則f(n)=(1/√5)*
【c語言程式】
main()
; int i;
for(i=2;i<40;i++)
for(i=0;i<40;i++)
return 0;
} 【pascal語言程式】
varfib: array[0..40]of longint;
i: integer;
begin
fib[0] := 1;
fib[1] := 1;
for i:=2 to 39 do
fib[i ] := fib[i-1] + fib[i-2];
for i:=0 to 39 do
write('f', i, '=', fib[i ]);
end.
【數列與矩陣】
對於斐波那契數列1,1,2,3,5,8,13…….有如下定義
f(n)=f(n-1)+f(n-2)
f(1)=1
f(2)=1
對於以下矩陣乘法
f(n+1) = 1 1 * f(n)
f(n) 1 0 f(n-1)
它的運算就是
f(n+1)=f(n)+f(n-1)
f(n)=f(n)
可見該矩陣的乘法完全符合斐波那契數列的定義
設1 為b,1 1為c
1 1 0
可以用迭代得到:
斐波那契數列的某一項f(n)=(bc^(n-2))1
這就是斐波那契數列的矩陣乘法定義.
另矩陣乘法的一個運演算法則a¬^n(n為偶數)=a^(n/2)* a^(n/2).
因此可以用遞迴的方法求得答案.
時間效率:o(logn),比模擬法o(n)遠遠高效。
**(pascal)
program fibonacci;
type
matrix=array[1..2,1..2] of qword;
varc,cc:matrix;
n:integer;
function multiply(x,y:matrix):matrix;
vartemp:matrix;
begin
temp[1,1]:=x[1,1]*y[1,1]+x[1,2]*y[2,1];
temp[1,2]:=x[1,1]*y[1,2]+x[1,2]*y[2,2];
temp[2,1]:=x[2,1]*y[1,1]+x[2,2]*y[2,1];
temp[2,2]:=x[2,1]*y[1,2]+x[2,2]*y[2,2];
exit(temp);
end;
function getcc(n:integer):matrix;
vartemp:matrix;
t:integer;
begin
if n=1 then exit(c);
t:=n div 2;
temp:=getcc(t);
temp:=multiply(temp,temp);
if odd(n) then exit(multiply(temp,c))
else exit(temp);
end;
procedure init;
begin
readln(n);
c[1,1]:=1;
c[1,2]:=1;
c[2,1]:=1;
c[2,2]:=0;
if n=1 then
begin
writeln(1);
halt;
end;
if n=2 then
begin
writeln(1);
halt;
end;
cc:=getcc(n-2);
end;
procedure work;
begin
writeln(cc[1,1]+cc[1,2]);
end;
begin
init;
work;
end.
【數列值的另一種求法】
f(n) = [ (( sqrt ( 5 ) + 1 ) / 2) ^ n ]
其中[ x ]表示取距離 x 最近的整數。
【數列的前若干項】
1 1
2 2
3 3
4 5
5 8
6 13
7 21
8 34
9 55
10 89
11 144
12 233
13 377
14 610
15 987
16 1597
17 2584
18 4181
19 6765
20 10946
斐波那契數列規律,斐波那契數列有啥規律?
後一個數是前兩個數的和。繁分數分母總是大於1,所以的值總是小於1而分子總是取先前的分母,除了第一次分子分母均是1時,值等於1 2,後來的值均大於1 2 而每次計算繁分數時,繁分數分母中的分母總是不變,分子總是先前分子與分母之和 這就完全符合斐波那契數列的規律 那麼這個最簡單的無窮連分數的值是多少呢?...
斐波那契數列數字排列規律為1,1,2,3,5,8,
include int main return 0 按1,1,2,3,5,8,13,21,的規律排列,第500個數是奇數還是偶數?詳細點謝謝 在斐波那契 bai數列的第 du500個數中是奇數。zhi 數列1,1,2,3,5,8,13,21,34,55,dao 的排列規律是版 前兩個權數是1,從第3...
證明 斐波那契數列中最大的立方數是
a n 2 an a n 1 a1 0,a2 1.a n 2 m 3,m為大於2的正整數.它的通項公式為 an 1 5 1 2 1 5 1 2 2 n 1 5 1 2 2 n 由二項式定理 a b n c n,r a n r b r r從0到n,求和 記求和符號p r,0,n 1 5 1 2 2 n...