JS中的杨辉三角
杨辉三角
杨辉三角使用二维数组
var n=Number(prompt(“请输入杨辉三角的行数”));
document.write(" < center> “);//居中
var arr = []; //先声明一维
for (var i = 0; i < n; i++) { //一维长度
arr[i] = []; //在声明二维
for (var j = 0; j <= i ; j++) {
if (i == j || j == 0) {//让每一行的第一个和最后一个等于1
arr[i][j] = 1;
}
else {
arr[i][j] = arr[i-1][j-1] + arr[i-1][j];
}
document.write(” “+arr[i][j]+” “);
}
document.write(”
");
}
杨辉三角使用递推
var n=Number(prompt(“请输入杨辉三角的行数”)); //杨辉三角,N为行数
document.write("< center>");
for( var i = 1 ; i <= n ; i++ ){
for ( var j = 1 ; j <= i ; j++ ) {
document.write(Combination(i,j)+" “);
}
document.write(”
");
}
function Combination(x,y){
if(y == 1) return 1; //每行第一个数为1
else if(x == y) return 1; //最后一个数为1
else return Combination(x-1,y-1)+Combination(x-1,y);
}