利用js里的循环来实现杨辉三角

mac2026-06-15  16

利用js写出杨辉三角

用户通过键盘输入要获取的杨辉三角的行数n 在网页中打印出n行数据思路代码如下

用户通过键盘输入要获取的杨辉三角的行数n 在网页中打印出n行数据

先来看看要实现的效果图! 这是用户手动输入行数,假如是8行 这里是显示8行杨辉三角的内容!

思路

在这里我将用到js中数组的知识来完成,我将用二维数组来储存这个序列,其中外层数组储存所有的值,里层数组将储存每一行的值。   我的思路是:     1.获取用户输入要的行数。     2.让每行的第一个元素为1,并且每行最后一个元素为1。     3.中间的参数就用公式combine(m - 1, n) + combine(m - 1, n - 1)来填充。

代码如下

function combine (m, n) { if (n == 0) { // 每行第0个元素为1 return 1; } else if (m == n) { // 每行最后一个元素为1 return 1; } else { // 其他情况用公式实现 return combine(m - 1, n) + combine(m - 1, n - 1); } }

接下来是:     1.获取用户输入要的行数。     2.实现在界面上显现需要的杨辉三角内容。

var num=Number(prompt('输入行数', 5)); function put (num) { for (var i = 0; i < num; i++) { // 遍历每一行 for (var j = 0; j <= i; j++) { // 遍历每行上面每个元素 document.write(combine(i, j) + ' '); } document.write('<br/>'); } } put(num);

如此就能达到我们需要的效果了~~,学习中的每一天都能有新的收获!!

最新回复(0)