用二维数组打印出杨辉三角
首先你得知道二位数组和熟练二位数组,再次你得知道杨辉三角的规律!
相信能知道这个的,你已经掉了半只脚在这个坑了,不说废话直接上。。。
针对Javascript掌握基础的:
在电脑输入cmd命令打开控制器先要创建node'.js的环境:
你得把这个文件夹和你的js文件放在一起!
js代码如下:
1 let readline = require("readline-sync"); 2 console.log("请输入杨辉三角的行数:"); 3 let line = parseInt(readline.question("")); 4 console.log("杨辉三角如下:***************************************************"); 5 let strSpace = "";//用于存储空格的字符串
6 let strNum = "";//用于存储杨辉三角的字符串
7
8 let arr = new Array(line);//创建一维数组
9
10 //创建二维数组
11 for (let i = 0; i < arr.length; i++) 12 { 13 arr[i] = new Array(i + 1); 14 } 15 //控制二维数组的行数
16 for (let i = 0; i < arr.length; i++) 17 { 18 for (let k = 1; k < line - i; k++) //控制前面空格数量
19 { 20 strSpace = strSpace + " "; 21 } 22 for (let j = 0; j < arr[i].length; j++) 23 { 24 //判断每行的数组的第一个和最后一个都为1
25 if (j == 0 || i == j) 26 { 27 arr[i][j] = 1; 28 } 29 else //规律,里面数字的规律
30 { 31 arr[i][j] = arr[i - 1][j - 1] + arr[i - 1][j]; 32
33 } 34 strNum += arr[i][j] + " ";//把数组放在字符串
35 strNum += " " + " "; //在累加空格
36 } 37 console.log(strSpace + strNum); 38 //下面是每次循环清空
39 strNum = ""; 40 strSpace = ""; 41 }
直接可以在这里输入cmd 打开控制器
然后输入node 文件名(注意node后面有空格)
输入行数打印的效果如下:
上面就是整个流程,当然也还有简单的操作!我这里只是把我自己对二位数组的理解,以及一个简单的双循环!
小小小尾巴@原创