杨辉三角

let readline = require("readline-sync");
console.log("请输入杨辉三角的行数: ");
let line=readline.question();
let arr=[];//声明一个数组来存储杨辉三角里面的数
let str = ""; // 用于拼接要打印的字符串
// 该层for循环用户控制杨辉三角的行数
for(let i=0;i<line;i++){
arr[i] = [];//开辟空间使其成为一个二维数组
//该层for循环用于控制要打印数字的个数第多少行就打印多少个数
for(let j=0;j<=i;j++)
{
// 打印以时要分为3种情况
if (j == 0 || i == j)//第一个数和最后一个数都是1
 
{
arr[i][j] = 1;
}
else {
//否则当这个数字等于上面的2个数之和
arr[i][j]=arr[i-1][j-1]+arr[i-1][j];
}
}
//该层for循环主要用于打印每一行前面的空格
for(let j=0;j<line-i;j++){
str+=" ";
}
console.log(str+arr[i]);//打印出前面的空格和该行的数字
str="";//重新制空打印空格的字符串
}
 


posted on 2019-08-23 15:21  他们说我没幽默感  阅读(90)  评论(0)    收藏  举报

导航