-
十月海洋
递归算法,高效准确,代码如下:var fun=function(index){
//对前两项进行数值判定
if (index <=2) {
return index;
}
else {
return fun(index - 1) + fun(index - 2);
}
}
for (var i = 1; i <= 20; i++) {
console.log(fun(i + 1) + '----' + fun(i));
/*输出的结果如下:
2----1
3----2
5----3
8----5
13----8
21----13
34----21
55----34
89----55
*/
}一旦你能够得到每项的数字,算和的话,只需要依次累加就可以了,希望对你有所帮助
-
阿旭_
设置行变量为i,分子为a,分母为b,观察行i 分子a 分母b0 2 1 (所以代码初始化值应该是这三个值)1 3(2+1) 22 5(3+2) 33 8 54 13 8double sum = 0;//累加器,求每一项的和
for(int i=0,a=2,b=1;i<20;i++){
sum = sum + 1.0*a/b ;//累加当前分数
/*为下一次累加做准备,即:改变分子分母的值*/
int t = a ;//临时保存分子的值
a = a + b ;//根据规律分子的值为a+b
b = t ;//根据规律分母的值应该是分子的值,而分子的值已发生变化所以用之前保存的t来代替即可。
}
-
慕粉3456840
function addAll(a,b,n)//a 分子 b 分母 { var total=0,tmp=0; for(var i=0;i<n;i++) { total+=a/b; tmp=a; a=a+b; b=tmp; } return total;}console.log(addAll(2,1,20));就可以了
-
宝慕林9293779
首先这个你要先找规律。第二个数的分母是第一个的分子,第二个数的分子是第一个数的分子加分母之和。自己动手丰衣足食