用js 输出杨辉三角 但是要让它倒着输出
用javascript输出杨辉三角 但是要让它倒着输出 该这样做
这是我的思路 求大神看看 哪里错了 谢谢 :
html>
倒三角var yang = new Array(); //定义第一个数组
for(var i=0;i<10;i++){//i代表行,这里是行的循环
if(i == 0){//当i等于0,也就是数组的第一个输出项
yang.push(1);//给数组的第一个输出项输出1
}
else if(i == 1){//当i不等于1时 再次进行判断 判断:当i等于1,也就是数组的第二个输出项
yang = new Array();//重置数组 我也不知道为啥要重置
yang.push(1);//给数组的第二个输出项第一列输出1
yang.push(1);//给数组的第二个输出项第二列输出1
}
else{
var yang2=new Array();//添加一个数组
yang2.push(1);//给第二个数组第一个输出项输出
for(var j = 0;j
循环步长是自增1*/
yang2.push(yang[j] + yang[j+1]);/*为第二个数组增加一个数*/
}
yang2.push(1);//为第二个数组的末端增加一个数 这个数是1
yang = new Array();//将第一个数组进行初始化
yang = yang2;//将第二个数组的值赋值给第一个数组
}
console.log(yang.join());//输出控制台
}
var dao=new Array(); //定义一个新的数组
dao=yang;//将第一个数组 赋值给 新的数组 让新的这个数组的值 变成第一个数组的最后一行的值
for(var y=0;y<10;y++){//dao 数组的行
var dao2 = new Array();//第二个数组
for(var h=0;h <= i;h++){//第二个数组的行 也就是第一个数组的列
if(h == 0){//当j 即第二个数组的序列等于 0 时
dao.push(1);//push 一个1
}
else{//否则
if(dao[h]-dao[h-1] > 0){//当这列的值 减去上一列的值 不为大于0时
dao.push(dao[h]-dao[h-1]);//就输出这个数
}
else{//否则
dao.push(dao[h]-dao[h+1]); //就用这列减去下列的值 并输出这个数
}
}
}
document.write(dao.join(" ")+"
");
}