用javascript 打印出菲波拉契数列的前20项 0 ,1,1,2,3,5,8…

如题所述

第1个回答  2012-11-22
<html>
<head>
<script>
function a(){
var b = document.getElementById("b");
document.getElementById("a").value= "123455677";
var array = new Array();
for(n=1;n < 21 ;n++)

if(n==1 || n==2){
array[n] = "1";
b.innerText = b.innerText + "1" + "/" ;
}else{
array[n] = Number(array[n-1]) + Number(array[n-2]);
b.innerText = b.innerText + array[n] + "/" ;
}
}
</script>
</head>
<body onload="a()">
<div id="a">
<table border="1">
<tr>
<td width="150" height="50" id="b" ></td>
</tr>
</table>
</div>
</body>
</html>

赋值粘贴就可以 想要多少位的 自己控制一下FOR本回答被提问者和网友采纳
第2个回答  2012-11-21
function fblj(n){ //斐波纳契数列公式

if(n==0){
return 0;
}else if(n==1){
return 1;
}else if(n>=2){
return arguments.callee.call(this,n-1)+arguments.callee.call(this,n-2);
}
}
function getfblj(n){ //获取数据 n为前n项

var arr=[];
while(n--){
arr[n]=fblj(n);
}
return arr;
}

var a=getfblj(20);
console.log(a);
// 得到的结果[0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233, 377, 610, 987, 1597, 2584, 4181]
相似回答