用for 循环解决杨辉三角问题
时间: 2024-10-15 09:27:16 浏览: 29
杨辉三角是一个数学术语,表示为一个倒置的金字塔形,其中每个数字都是其上方两个数字之和。用 JavaScript 的 for 循环来生成杨辉三角,我们可以创建一个二维数组并动态填充每一行。
这是一个简单的例子,展示了如何使用嵌套的 for 循环来构建杨辉三角:
```javascript
function generatePascalTriangle(n) {
let triangle = new Array(n);
// 初始化第一行和第二行
if (n >= 1) {
triangle[0] = [1];
}
if (n >= 2) {
triangle[1] = [1, 1];
}
// 使用 for 循环填充剩余行
for (let i = 2; i < n; i++) {
let newRow = [1]; // 新行开始总是1
for (let j = 1; j < i; j++) {
newRow[j] = triangle[i - 1][j - 1] + triangle[i - 1][j]; // 计算当前元素等于上一行相邻元素之和
}
newRow.push(1); // 新行结束总是1
triangle[i] = newRow;
}
return triangle;
}
// 示例:打印前5行杨辉三角
for (let i = 0; i < 5; i++) {
console.log(generatePascalTriangle(i).map(row => row.join(' ')));
}
```
运行这段代码,你会看到前5行的杨辉三角输出。每行的数字是由前两行相应位置的数字相加得到的。
阅读全文