第一种一维数组形式:
var i=prompt('请输入杨辉三角形的维数',1);
var old=new Array();var now=new Array();
old[0]=1;
old[1]=1;
if(i==1)
document.write('<center>1</center>');
else if(i==2)
{
document.write('<center>1</center>');
document.write('<center>1 1</center>');
}
else
{
document.write('<center>1</center>');
document.write('<center>1 1</center>');
for(j=3; j<=i; j++)
{
for(m=0; m<j; m++)
{
if(m==0)
{
now[m]=1;
}
else if(m==(j-1))
{
now[m]=1;
}
else
{
now[m]=old[m]+old[m-1];
}
}
var str='';
for(var n=0; n<j; n++)
{
str+=now[n]+' ';
old[n]=now[n];
}
document.write('<center>'+str+'</center>');
}
}
</script>
第二种:n维数组形式:
<script>
try{
var i=window.prompt('请输入一个数字','x');
i=parseInt(i);
var a=new Array(); //先声明一维
for(var n=0;n<i;n++)
{ //一维长度为10
a[n]=new Array(); //在声明二维
for(var j=0;j<n;j++)
a[n][j]=0;
}
for(var j=0;j<i;j++)
{
a[j][0]=1;
a[j][j]=1;
}
for(var j=2; j<i; j++)
{
for(var n=1; n<j; n++)
{
a[j][n]=a[j-1][n-1]+a[j-1][n];
}
}
for(var n=0; n<i; n++)
{
document.write('<center>');
for(var j=0; j<=n; j++)
{
document.write(a[n][j]+" ");
}
document.write('</center>'); }
}
catch(e){
document.write(e);
}
</script>