#黄金数列——数学中的美学#
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
黄金数列——数学中的美学
一、斐波那契数列
■斐波那契数列的简介
斐波那契数列(Fibonacci ,又译作“斐波拉契数列”或“斐波那切数列”)是一个非常美丽、和谐的数列,它的形状可以用排成螺旋状的一系列正方形来说明(如右词条图),起始的正方形(图中用灰色表示)的边长为1,在它左边的那个正方形的边长也是1 ,在这两个正方形的上方再放一个正方形,其边长为2,以后顺次加上边长为3、5、8、13、2l……等等的正方形。
这些数字每一个都等于前面两个数之和,它们正好构成了斐波那契数列。
斐波那契数列指的是这样一个数列:1,1,2,3,5,8,13,21,34……
斐波那契数列之闻名,可能还跟美国悬疑作家丹·布朗有关,他在他的小说《达芬奇密码》之中巧妙地运用了该数列。
其实,我国现行的高中教材中提及了杨辉三角,斐波那契数列可在其中寻得。
■斐波那契数列的出现——兔子数列
13世纪初,欧洲最好的数学家是斐波那契;他写了一本叫做《算盘全书》的著作,是当时欧洲最好的数学书。
书中有许多有趣的数学题,其中最有趣的是下面这个题目:
“如果一对兔子每月能生1对小兔子,而每对小兔在它出生后的第3个月里,又能开始生1对小兔子,假定在不发生死亡的情况下,由1对初生的兔子开始,1年后能繁殖成多少对兔子?” 斐波那契把推算得到的头几个数摆成一串:1,1,2,3,5,8……
这串数里隐含着一个规律:从第3个数起,后面的每个数都是它前面那两个数的和。
而根据这个规律,只要作一些简单的加法,就能推算出以后各个月兔子的数目了。
按照这个规律推算出来的数,构成了数学史上一个有名的数列。
大家都叫它“斐波那契数列”,斐波那契数列又因数学家列昂纳多·斐波那契以兔子繁殖为例子而引入,故又称为“兔子数列”。
〖兔子数列分析过程〗
一般而言,兔子在出生两个月后,就有繁殖能力,一对兔子每个月能生出一对小兔子来。
如果所有兔都不死,那么一年以后可以繁殖多少对兔子?
我们不妨拿新出生的一对小兔子分析一下: 第一个月小兔子没有繁殖能力,所以还是一对; 两个月后,生下一对小兔,共有两对;
三个月以后,老兔子又生下一对,因为小兔子还没有繁殖能力,所以一共是三对;
……
依次类推可以列出下表:
表中数字1,1,2,3,5,8…构成了一个数列。
这个数列有关十分明显的特点,那是:前面相邻两项之和,构成了后一项。
这个特点的证明:每月的大兔子对数为上月的兔子对数,每月的小兔子对数为上月的大兔子对数(即上上月的兔子对数),大小兔子对数相加即为所求。
■斐波那契数列的递推关系
斐波那契数列来源于兔子问题,根据分析其递推关系为: 1)1(=f ,1)2(=f ,
)2()1()(-+-=n f n f n f ,其中2≥n
{})(n f 即为斐波那契数列。
■斐波那契数列的通项公式
这个数列从第三项开始,每一项都等于前两项之和。
它的通项公式为:⎪⎪⎭⎫
⎝
⎛⎪⎪⎭⎫ ⎝⎛--⎪⎪⎭⎫ ⎝⎛+⋅=n
n n a 25125151 〖又叫“比内公式”,19世纪法国数学家Jacques Phillipe Marie Binet (1786-1856)〗
很有趣的是:这样一个完全是自然数的数列,通项公式居然是用无理数来表达的。
〖斐波那契数列通项公式的推导〗
斐波那契数列:0,1,1,2,3,5,8,13,21……
如果设F(n)为该数列的第n 项(n ∈N+)。
那么这句话可以写成如下形式: 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)*{[(1+√5)/2]^n - [(1-√5)/2]^n}【√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)*{[(1+√5)/2]^n - [(1-√5)/2]^n}
“斐波那契数列”的发明者,是意大利数学家列昂纳多·斐波那契(Leonardo Fibonacci ,生于公元1170年,卒于1240年。
籍贯大概是比萨)。
他被人称作“比萨的列昂纳多”。
1202年,他撰写了《珠算原理》(Liber Abaci)一书。
他是第一个研究了印度和阿拉伯数学理论的欧洲人。
他的父亲被比萨的一家商业团体聘任为外交领事,派驻地点相当于今日的阿尔及利亚地区,列昂纳多因此得以在一个阿拉伯老师的指导下研究数学。
他还曾在埃及、叙利亚、希腊、西西里和普罗旺斯研究数学。
斐氏本人对这个数列并没有再做进一步的探讨。
直到十九世纪初才有人详加研究,1960年左右,许多数学家对斐波那契数列和有关的现象非常感到兴趣,不但成立了斐氏学会,还创办了相关刊物,其后各种相关文章也像斐氏的兔子一样迅速地增加。
■斐波那契数列的某些性质(记f(n),其中f(0)=0,f(1)=1,f(2)=1,f(3)=2……)
✧ f(0)+f(1)+f(2)+…+f(n)=f(n+2)-1 ✧ f(1)+f(3)+f(5)+…+f(2n -1)=f(2n)-1 ✧ f(0)+f(2)+f(4)+…+f(2n)=f(2n+1)-1
✧ [f(0)]^2+[f(1)]^2+…+[f(n)]^2=f(n)·f(n+1)
✧ f(0)-f(1)+f(2)-…+(-1)^n·f(n)=(-1)^n·[f(n+1)-f(n)]+1 ✧ f(n)f(n)-f(n+1)f(n-1)=(-1)^n;
从第二项开始,每个奇数项的平方都比前后两项之积多1,每个偶数项的平方都比前后两项之积少1。
[f(n)]^2=(-1)^(n-1)+f(n-1)·f(n+1)
✧ f(2n-1)=[f(n)]^2-[f(n-2)]^2
✧ f(m+n)=f(m-1)·f(n -1)+f(m)·f(n)
✧ arctan[1/f(2n+1)]=arctan[1/f(2n+2)]+arctan[1/f(2n+3)]
✧ 斐波那契数列的第n 项同时也代表了集合{1,2,...,n}中所有不包含相邻正整数的子集个数。
■斐波那契数列的变式
◆ 帕多瓦数列:1,1,1,2,2,3,4,5,7,9,12,16,
21,……这样的数列称为帕多瓦数列。
它和斐波那契数列非常相似,稍有不同的是:每个数都是跳过它前面的那个数,并把再前面的两个数相加而得出的。
这个数列可以用另一幅图来表示,它是由一些等边三角形构成的(如右图)。
开始的三角形用灰色表示,为了使这些三角形天衣无缝地拼在一起,头三个三角形的边长均为1,其后的两个三角形的边长为2,然后依次是3、4、5、7、9、12、16、2l……等等。
◆ 冬冬有15块糖,如果每天至少吃3块,吃完为止,那么共有多少种不同的吃法?
如果冬冬有3块糖、4块糖或者5块糖,都只有1种吃法;如果有6块糖,则有2种吃法;如果有7块糖,
个数。
它的规律和斐波那契数列既相似之处又有不同之处.
◆ 小明要上楼梯,他每次能向上走一级、两级或三级,如果楼梯有10级,他有几种不同的走法?
这里我们不妨也来研究一下其中的规律:如果楼梯就一级,他有1种走法;如果楼梯有两级,他有2种走法;
二、黄金分割数
黄金分割是我们在初中学习平面几何的时候就接触到的知识。
设线段AB 长度为1,在上面取一点C 使得AC/BC = AB/AC ,C点被称为线段AB的“黄金分割”点。
设AC 部分长为X,则x/(1-x)=1/x,即x^2+x-1 =0 。
解这个方程得:
x=(-1±√5)/2。
因为X>0,所以x=(-1+√5)/2≈0.618,1/x=(1+√5)/2≈1.618
这两个数就是自然界普遍存在的“黄金分割”数。
三、斐波那契数列与黄金分割
斐波那契数列与黄金分割有什么关系呢?经研究发现,相邻两个斐波那契数的比值是随序号的增加而逐渐趋于黄金分割比的。
即f(n-1)/f(n)-→0.618…。
由于斐波那契数都是整数,两个整数相除之商是有理数,所以只是逐渐逼近黄金分割比这个无理数。
但是当我们继续计算出后面更大的斐波那契数时,就会发现相邻两数之比确实是非常接近黄金分割比的。
✧随着数列项数的增加,前一项与后一项之比越逼近黄金分割0.6180339887……
相继的斐波那契数的比的数列:
✧后一项与前一项之比1.6180339887……
✧如果任意挑两个数为起始,比如5、-2.4,然后两项两项地相加下去,形成5、-2.4、2.6、0.2、2.8、
3、5.8、8.8、14.6……等,你将发现随着数列的发展,前后两项之比也越来越逼近黄金分割,且某一
项的平方与前后两项之积的差值也交替相差某个值。
✧不仅这个由1,1,2,3,5....开始的"斐波那契数"是这样,随便选两个整数,然后按照斐波那契数的规律
排下去,两数间比也是会逐渐逼近黄金比的.
它们交错地或大于或小于黄金比φ的值。
该数列的极限为φ。
这种联系暗示了无论(尤其在自然现象中)在哪里出现黄金比、黄金矩形或等角螺线,那里也就会出现斐波那契数,反之亦然。
该数列还有很多奇妙的属性
✧一位魔术师拿着一块边长为8英尺的正方形地毯,对他的地毯匠朋友说:“请您把这块地毯分
成四小块,再把它们缝成一块长13英尺,宽5英尺的长方形地毯。
”这位匠师对魔术师算术之差
深感惊异,因为两者之间面积相差达一平方英尺呢!可是魔术
这真是不可思议的事!一个8*8的方格切成四块,可以拼成
一个5*13的长方形,为什么64=65?那神奇的一平方英尺究竟
跑到哪儿去呢?
其实就是利用了斐波那契数列的这个性质:5、8、13正是数列中相邻
的三项,事实上前后两块的面积确实差1,只不过后面那个图中有一条细长的狭缝,一般人不容易注意到。
【斐波那契数列的存在】
甚至可以说,斐波那契数列无处不在,以下仅举几条常见的例子:
◆在杨辉三角中隐藏着斐波那契数列:
1
1 1
1 2 1
1 3 3 1
1 4 6 4 1
……
过第一行的“1”向左下方做45度斜线,之后做直线的平行线,将每条直线所过的数加起来,即得一
数列1、1、2、3、5、8……
◆从蜜蜂的繁殖来看,雄峰只有母亲,没有父亲,因为蜂后产的卵,受精的孵化为雌蜂,未受精的孵化为
雄峰。
人们在追溯雄峰的祖先时,发现一只雄峰的第n代祖先的数目刚好就是斐波那契数列的第n项Fn。
◆钢琴的13个半音阶的排列完全与雄峰第六代的排列情况类似,说明音调也与斐波那契数列有关。
◆多米诺牌(可以看作一个2×1大小的方格)完全覆盖一个n×2的棋盘,覆盖的方案数等于斐波那契数
列。
斐波那契数列在自然科学的其他分支,也有许多应用。
例如,树木的生长:
◆如果一根树枝每年长出一根新枝,而长出的新枝两年以后,每年也长出一根新枝,那么历年的树枝数,
也构成一个斐波那契数列.
由于新生的枝条,往往需要一段“休息”时间,供自身生长,而后才能
萌发新枝。
所以,一株树苗在一段间隔,例如一年,以后长出一条新
枝;第二年新枝“休息”,老枝依旧萌发;此后,老枝与“休息”过一年的
枝同时萌发,当年生的新枝则次年“休息”。
这样,一株树木各个年份
的枝桠数,便构成斐波那契数列。
这个规律,就是生物学上著名的“鲁
德维格定律”。
◆自然界中一些花朵的花瓣数目符合于斐波那契数列,也就是说在大多数情况下,一朵花花瓣的数目都是
3,5,8,13,21,34,……(有6枚是两套3枚;有4枚可能是基因突变)。
斐波那契数列在自然界中的出现是如此地频繁,人们深信这不是偶然的。
(1)细察下列各种花,它们的花瓣的数目具有斐波那契数:延龄草、野玫瑰、南美血根草、大波斯菊、金凤花、耧斗菜、百合花、蝴蝶花。
(2)细察以下花的类似花瓣部分,它们也具有斐波那契数:紫宛、大波斯菊、雏菊。
斐波那契数经常与花瓣的数目相结合:
3………………………百合和蝴蝶花
5………………………蓝花耧斗菜、金凤花、飞燕草
8………………………翠雀花
13………………………金盏草
21………………………紫宛
34,55,84……………雏菊
(3)斐波那契数还可以在植物的叶、枝、茎等排列中发现。
例如,在树木的枝干上选一片叶子,记其为数0,然后依序点数叶子(假定没有折损),直到到达与那片叶子正对的位置,则其间的叶子数多半是斐波那契数。
叶子从一个位置到达下一个正对的位置称为一个循回。
叶子在一个循回中旋转的圈数也是斐波那契数。
在一个循回中叶子数与叶子旋转圈数的比称为叶序(源自希腊词,意即叶子的排列)比。
多数的叶序比呈现为斐波那契数的比。
(4)斐波那契数有时也称松果数,因为连续的斐波那契数会出现在松果的左和右的两种螺旋形走向的数目之中。
这种情况在向日葵的种子盘中也会看到。
此外,你能发现一些连续的鲁卡斯数吗?
(5)菠萝是又一种可以检验斐波那契数的植物。
对于菠萝,我们可以去数一下它表面上六角形鳞片所形成的螺旋线数。
几乎所有花朵的花瓣数都来自这个级数中的一项数字:菠萝表皮方块形鳞苞形成两组旋向相反的螺线,
它们的条数必须是这个级数中紧邻的两个数字(如左旋8行,右旋13行);还有向日葵花盘...
(6)具有13条顺时针旋转和21条逆时针旋转的螺旋(斐波那契螺旋)的蓟jì(如右图)的头部
这些植物懂得斐波那契数列吗?应该并非如此,它们只是按照自然的规律才进化成这样。
这似乎是植物排列种子的“优化方式”,它能使所有种子具有差不多的大小却又疏密得当,不至于在圆心处挤了太多的种子而在圆
周处却又稀稀拉拉。
叶子的生长方式也是如此,对于许多植物来说,每片
叶子从中轴附近生长出来,为了在生长的过程中一直都能最佳地利用空间(要考虑到叶子是一片一片逐渐地生长出来,而不是一下子同时出现的),每片叶子和前一片叶子之间的角度应该是222.5度,这个角度称为“黄金角度”,因为它和整个圆周360度之比是黄金分割数1.618033989……的倒数,而这种生长方式就决定了斐波那契螺旋的产生。
向日葵的种子排列形成的斐波那契螺旋有时能达到89,甚至144条。
【附】斐波那契数列相关程序
【C语言程序】
main()
{
long fib[40] = {0,1};
int i;
for(i=2;i<40;i++)
{
fib[i ] = fib[i-1]+fib[i-2];
}
for(i=0;i<40;i++)
{
printf("F%d==%d\n", i, fib);
}
return 0;
}
【C#语言程序】
public class Fibonacci
{
//NormRen
static void Main(string[] args)
{
int x = 0, y = 1;
for (int j = 1; j < 10; j++, y = x + y, x = y - x) Console.Write(y + " ");
}
}
【Java语言程序】
public class Fibonacci
{
public static void main(String[] args)
{
int x=1,y=1;
System.out.println(x+" ");
for(int i=1;i<=20;i++)
{
System.out.println(y+" ");
y=x+y;x=y-x;
}
}
} 【Pascal语言程序】
递推:
var
fib: 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.
递归:
function fib(n:integer):longint;
begin
if (n=1) then exit(0);
if (n=2) then exit(1);
fib:=fib(n-2)+fib(n-1);
end;
【PL/SQL程序】
declare i number :=0;
j number :=1;
x number :=1;
begin
while x<1000
loop
dbms_output.put_line(x);
x:=i+j;
i:=j;
j:=x;
end loop;
end;。