1樓:致意
那麼這句話可以寫成如下形式: f(0) = 0,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)* 迭代法 已知a1=1,a2=1,an=a(n-1)+a(n-2)(n>=3),求數列的通項公式 解:
設an-αa(n-1)=β(a(n-1)-αa(n-2)) 得α+β=1 αβ=-1 構造方程x²-x-1=0,解得α=(1-√5)/2,β=(1+√5)/2或α=(1+√5)/2,β=(1-√5)/2 所以 an-(1-√5)/2*a(n-1)=(1+√5)/2*(a(n-1)-(1-√5)/2*a(n-2))=[(1+√5)/2]^(n-2)*(a2-(1-√5)/2*a1)`````````1 an-(1+√5)/2*a(n-1)=(1-√5)/2*(a(n-1)-(1+√5)/2*a(n-2))=[(1-√5)/2]^(n-2)*(a2-(1+√5)/2*a1)`````````2 由式1,式2,可得 an=[(1+√5)/2]^(n-2)*(a2-(1-√5)/2*a1)``````````````3 an=[(1-√5)/2]^(n-2)*(a2-(1+√5)/2*a1)``````````````4 將式3*(1+√5)/2-式4*(1-√5)/2,化簡得an=(1/√5)* an=(1/√5)* 這個就是通項公式! `````
2樓:匿名使用者
斐波那契數列的通項公式an=(1/√5)×
推導過程見wrod檔案
斐波那契數列的通項公式是什麼,及推導過程
3樓:迷路明燈
方法二:待定係數法構造等比數列1(初等代數解法)
設常數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⑶-r*f⑵=s*[f⑵-r*f⑴]。
聯立以上n-2個式子,得:
f(n)-r*f(n-1)=[s^(n-2)]*[f⑵-r*f⑴]。
∵s=1-r,f⑴=f⑵=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⑴。
= 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)=(√5/5)*。
方法三:待定係數法構造等比數列2(初等代數解法)
已知a1=1,a2=1,an=a(n-1)+a(n-2)(n>=3),求數列的通項公式。
解 :設an-αa(n-1)=β(a(n-1)-αa(n-2))。
得α+β=1。
αβ=-1。
構造方程x^2-x-1=0,解得α=(1-√5)/2,β=(1+√5)/2或α=(1+√5)/2,β=(1-√5)/2。
所以。an-(1-√5)/2*a(n-1)=(1+√5)/2*(a(n-1)-(1-√5)/2*a(n-2))=[(1+√5)/2]^(n-2)*(a2-(1-√5)/2*a1)`````````1。
an-(1+√5)/2*a(n-1)=(1-√5)/2*(a(n-1)-(1+√5)/2*a(n-2))=[(1-√5)/2]^(n-2)*(a2-(1+√5)/2*a1)`````````2。
由式1,式2,可得。
an=[(1+√5)/2]^(n-2)*(a2-(1-√5)/2*a1)``````````````3。
an=[(1-√5)/2]^(n-2)*(a2-(1+√5)/2*a1)``````````````4。
將式3*(1+√5)/2-式4*(1-√5)/2,化簡得an=(1/√5)*。
方法四:母函式法。
對於斐波那契數列,有a(1)=a(2)=1,a(n)=a(n-1)+a(n-2)(n>2時)
令s(x)=a(1)x+a(2)x^2+……+a(n)x^n+……。
那麼有s(x)*(1-x-x^2)=a(1)x+[a(2)-a(1)]x^2+……+[a(n)-a(n-1)-a(n-2)]x^n+……=x
.因此s(x)=x/(1-x-x^2).
不難證明1-x-x^2=-[x+(1+√5)/2][x+(1-√5)/2]=[1-(1-√5)/2*x][1-(1+√5)/2*x].
因此s(x)=(1/√5)*.
再利用式1/(1-x)=1+x+x^2+x^3+……+x^n+……
於是就可以得s(x)=b(1)x+b(2)x^2+……+b(n)x^n+……
其中b(n)=(1/√5)*.
因此可以得到a(n)=b(n)==(1/√5)*
斐波那契數列通項公式,詳細過程。
4樓:匿名使用者
即斐波那契數列,「斐波那契數列」的發明者,是義大利數學家列昂納多·斐波那契(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,2,3中,為什麼每過4項就會出現
設x3是3的倍bai數,則後面依次dux4,x5,x6,直到x7才是zhi3的倍數。x5 x4 x3 daox6 x5 x4 x7 x6 x5 整理得x7 2x3 3x4,顯然是版3的倍數。由於1,1,2,3前4項已經決權定x3 3 是一個3的倍數,所以以上結論以此類推成立。哈哈。你把du遞推式子往...
怎麼證明斐波那契數列前n項之和等於fn
運用數學歸納bai法 當n 1時,命題成 du立假設n k時,命題成立 當zhin k 1時,f daok 3 專 1 f k 1 f k 2 1 f k 1 f 1 f 2 屬.f k f 1 f 2 f k 1 命題成立 主函式已經給出了,只要編寫函式fibo,如下 int fibo int n...
用c語言求斐波那契數列第n項的值
複製貼上即可 求 fibonacci 數列第 n 個數 1 1 2 3 5 8 13 21 include void main printf d n x getchar getchar include void main printf d n f 加上括號 if n 2 printf 1 這樣改 怎...