美文网首页
用if语句和迭代完成斐波那契数列

用if语句和迭代完成斐波那契数列

作者: 光年之外iii | 来源:发表于2019-10-06 04:38 被阅读0次

斐波那契数列指的是这样一个数列:1、1、2、3、5、8、13、21、34、……在数学上,斐波纳契数列以如下被以递推的方法定义:F(1)=1,F(2)=1, F(n)=F(n-1)+F(n-2)(n>=3,n∈N)*

设置一个变量a,当a为0或小于0时:

当a为1或a为2时:

当a>2时:

设置一个函数,将变量a引入,则为:

打印 console.log(fb(a)),代入a的值,便可生成斐波那契数列中对应的数字。

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

使用for循环的迭代完成斐波那契数列:

众所周知,斐波那契数列从第三项开始,后一项为前两项之和,

因此,先设一个num1为前一项,num2为当前项,sum为后一项。

当sum完成一次前两项相加等于后一项时,

sum变为当前项,即:

num2变为num1,即当前项变为前一项:

用for循环时,返回一次便可执行新的一轮循环。

i为斐波那契数列中的当前项

设立一个i为当前项,从3开始,因为斐波那契前两项都为1。num为项数,即当前运行到了第几个数字,当i等于当前num的值时,循环停止。

例如:console.log(getFib(6))时,num=6,即为当前的最大项数,sum便为数列中第六个数字,为8.

相关文章

网友评论

      本文标题:用if语句和迭代完成斐波那契数列

      本文链接:https://www.haomeiwen.com/subject/wezypctx.html