学习计算机,分享下js的杨辉三角形代码

第一种一维数组形式:

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&nbsp;&nbsp;&nbsp;1</center>');
}
else
{

document.write('<center>1</center>');
document.write('<center>1&nbsp;&nbsp;&nbsp;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]+'&nbsp;&nbsp;&nbsp;';
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]+"&nbsp;");

}
document.write('</center>'); } 


}
catch(e){
document.write(e);
}
</script>


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值