博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
用一条SQL语句实现斐波那契数列
阅读量:5804 次
发布时间:2019-06-18

本文共 1108 字,大约阅读时间需要 3 分钟。

求斐波那契数列: 1,1,2,3,5,8,13,21,....

---------------------------------------

--实现方法

declare @length int
select @length=20 --数列长度

--可以直接把下面语句中的@length换成数字就只剩一条语句了 :)

;with fn as

(
select 2 as idx,cast(1 as float) as f1,cast(1 as float) as f2
union all
select idx+1 as idx,f1+f2 as f1,f1 as f2 from fn where idx<@length
)
select 1 as idx,1 as f1
union all
select idx,f1 from fn
OPTION(MAXRECURSION 0)

 

-----------------------------------------

OPTION(MAXRECURSION 0) --当指定MAXRECURSION为0时,递归层次无限制,100为系统的默认值

-----------------------------------------

公元1202年,意大利数学家斐波那契提出了一个智力题:第一个月买回一对小兔子,第二个月小兔长成大兔,第三个月生下一对小兔,小兔一个月后长成大兔,大兔每月都能生一对小兔,买兔养兔人家各月兔子的对数为
1,1,2,3,5,8,13,21,.......
谁能往下写得多,谁聪明,这个智力游戏当时十分流行,这个数列就称为斐波那契数列,后来,斐波那契给出了这个数列的递推公式:
a1=1,a2=1,a(m+2)=a(m+1)+am,(m≥1,m∈Z)
后来人们想找到数列的通项公式,但很久未成功,直到二百多年后,法国数学家比内终于得出了通项公式:
an={[(√5+1)^n]/2-[(1-√5)^n]/2]}÷√5
一个以正整数为项的数列通项竟是含无理数的复杂分式,令人称奇!
这个通项的推导很复杂,这里无法叙述.
斐波那契数列美妙无比,以它前项为分子,后项为分母的数列:
2/3,3/5,5/8.8/13,......是黄金分割数0.618的分数表示
斐波那契数列像黄金分割一样,用途十分广泛,它在科研,文学,艺术,体育,医学等许多方面都有广泛应用,千多年来,对它的研究一直热烈进行,并逐步发展.

 

转载于:https://www.cnblogs.com/llbofchina/archive/2010/06/10/1755768.html

你可能感兴趣的文章
Android实例-录音与回放(播放MP3)(XE8+小米2)
查看>>
CSS——(2)与标准流盒模型
查看>>
MYSQL 基本SQL语句
查看>>
C#中的Marshal
查看>>
linux命令:ls
查看>>
Using RequireJS in AngularJS Applications
查看>>
hdu 2444(二分图最大匹配)
查看>>
shell编程笔记六:实现ll命令
查看>>
【SAP HANA】关于SAP HANA中带层次结构的计算视图Cacultation View创建、激活状况下在系统中生成对象的研究...
查看>>
[nodejs] nodejs开发个人博客(五)分配数据
查看>>
《Linux内核修炼之道》 之 高效学习Linux内核
查看>>
Java数据持久层框架 MyBatis之API学习九(SQL语句构建器详解)
查看>>
30分钟Git命令“从入门到放弃”
查看>>
nginx : TCP代理和负载均衡的stream模块
查看>>
MYSQL数据库间同步数据
查看>>
DevOps 前世今生 | mPaaS 线上直播 CodeHub #1 回顾
查看>>
iOS 解决UITabelView刷新闪动
查看>>
让前端小姐姐愉快地开发表单
查看>>
Dubbo笔记(四)
查看>>
Web前端JQuery入门实战案例
查看>>