【斐波那契数列应用】
目标序列:1 1 2 3 5 8 13...
首先:找关系
f: 代表第一位
s: 代表第二位
t: 代表第三位
我们把 f s t 看做一个游标
f s t //求第三位就是第一位加第二位
1 1 2 3 5 8 13......
f s t // 求第四位就是第二位加第三位
分析:
1. 可能涉及到的参数 【运算循环的次数】 【求第n项】 并且找出他们之间的关系
2. 观察发现:运算过的次数和所求的项n,之间的关系为: n - 2
3. 每次运算完成,我们的游标 f s t指向都往后偏移一位...
4. 当游标发生偏移以后,对应的 f, s 值就要发生改变 f = s; s = t;
<script>
let n = Number(window.prompt('请输入目标所在位数:'));
let first = second = 1; // 第一 、第二位是已知的
let three = 0;
if (n > 2) {
for (var i = 0; i < n - 2; i++) {
three = first + second;
first = second;
second = three;
}
console.log(three);
}else{
console.log(1);
}
</script>
来源:51CTO
作者:Jeary0103
链接:https://blog.51cto.com/wangzhiyuan/2474088