利用二维数组输出杨辉三角
时间: 2024-01-12 17:46:24 浏览: 88
下面是利用二维数组输出杨辉三角的 Python 代码:
```python
n = int(input("请输入要输出的杨辉三角的行数:"))
# 创建二维数组
triangle = [[0] * n for i in range(n)]
# 初始化三角形左侧和顶部的数值为1
for i in range(n):
triangle[i][0] = 1
triangle[i][i] = 1
# 递推计算杨辉三角中的数值
for i in range(2, n):
for j in range(1, i):
triangle[i][j] = triangle[i-1][j-1] + triangle[i-1][j]
# 输出杨辉三角
for i in range(n):
for j in range(i+1):
print(triangle[i][j], end=" ")
print()
```
运行代码,输入行数,即可输出相应行数的杨辉三角。
相关问题
用二维数组输出杨辉三角形
要用二维数组输出杨辉三角形,可以使用动态规划的方法来实现。首先,我们需要创建一个二维数组来存储杨辉三角形的元素。然后,通过循环遍历数组,根据杨辉三角形的规律,计算每个位置上的元素值,并将其存储在数组中。最后,按照格式输出数组的内容即可。
以下是用二维数组输出杨辉三角形的示例代码:
```python
def generate_pascal_triangle(num_rows):
triangle = [ * (i + 1) for i in range(num_rows)]
for i in range(2, num_rows):
for j in range(1, i):
triangle[i][j] = triangle[i-1][j-1] + triangle[i-1][j]
return triangle
def print_pascal_triangle(triangle):
for row in triangle:
for num in row:
print(num, end=' ')
print()
num_rows = 5
triangle = generate_pascal_triangle(num_rows)
print_pascal_triangle(triangle)
```
运行以上代码,将会输出一个5行的杨辉三角形:
```
1
1 1
1 2 1
1 3 3 1
1 4 6 4 1
```
利用二维数组实现杨辉三角形的输出
以下是利用二维数组实现杨辉三角形的输出的示例代码:
```java
public class YangHuiTriangle {
public static void main(String[] args) {
int n = 10; // 杨辉三角形的行数
int[][] arr = new int[n][n]; // 创建二维数组
for (int i = 0; i < n; i++) {
for (int j = 0; j <= i; j++) {
if (j == 0 || j == i) { // 杨辉三角形的边界为1
arr[i][j] = 1;
} else { // 其他位置的值为上一行对应位置的值加上上一行前一个位置的值
arr[i][j] = arr[i - 1][j] + arr[i - 1][j - 1];
}
System.out.print(arr[i][j] + " "); // 输出数组中的值
}
System.out.println(); // 换行
}
}
}
```
上述代码中,首先定义了杨辉三角形的行数n和一个n*n的二维数组arr。然后利用两重循环遍历数组,当处理到第i行第j列时,如果j等于0或i时,arr[i][j]的值为1;否则,arr[i][j]的值等于上一行对应位置的值加上上一行前一个位置的值。最后,输出二维数组中的值即可得到杨辉三角形的输出。
阅读全文