使用动态建立二维数组的方式输出8行杨辉三角形
时间: 2023-04-15 09:03:18 浏览: 103
以下是使用动态建立二维数组的方式输出8行杨辉三角形的代码:
```python
n = 8 # 杨辉三角形的行数
triangle = [[1] * (i+1) for i in range(n)] # 动态建立二维数组
for i in range(2, n): # 从第3行开始计算
for j in range(1, i): # 第1列和最后1列都是1,不需要计算
triangle[i][j] = triangle[i-1][j-1] + triangle[i-1][j] # 根据杨辉三角形的规律计算每个数
for row in triangle: # 输出杨辉三角形
print(row)
```
输出结果如下:
```
[1]
[1, 1]
[1, 2, 1]
[1, 3, 3, 1]
[1, 4, 6, 4, 1]
[1, 5, 10, 10, 5, 1]
[1, 6, 15, 20, 15, 6, 1]
[1, 7, 21, 35, 35, 21, 7, 1]
```
相关问题
使用二维数组,输出以下的杨辉三角形(要求输出10行)。
以下是使用Python语言实现的代码:
```python
# 初始化二维数组
triangle = [[1], [1, 1]]
# 打印前两行
for row in triangle:
print(' '.join([str(num) for num in row]))
# 生成余下的8行
for i in range(2, 10):
row = [1] # 每行开头都是1
for j in range(1, i):
row.append(triangle[i-1][j-1] + triangle[i-1][j])
row.append(1) # 每行结尾都是1
triangle.append(row) # 将当前行添加到二维数组中
print(' '.join([str(num) for num in row])) # 打印当前行
```
输出结果如下:
```
1
1 1
1 2 1
1 3 3 1
1 4 6 4 1
1 5 10 10 5 1
1 6 15 20 15 6 1
1 7 21 35 35 21 7 1
1 8 28 56 70 56 28 8 1
1 9 36 84 126 126 84 36 9 1
```
Java设计二维数组,输出、处理杨辉三角形,显示10行的杨辉三角形:
可以用一个二维数组来存储杨辉三角形。首先,需要确定数组的大小,因为杨辉三角形是一个三角形,所以可以将数组的行数和列数都设置成需要输出的行数。然后,可以使用一个循环来填充数组,每个元素的值都是其上方两个元素之和。
以下是Java代码实现:
```
public class YangHuiTriangle {
public static void main(String[] args) {
int n = 10;
int[][] yangHui = new int[n][n];
// 填充数组
for (int i = 0; i < n; i++) {
for (int j = 0; j <= i; j++) {
if (j == 0 || j == i) {
yangHui[i][j] = 1;
} else {
yangHui[i][j] = yangHui[i - 1][j - 1] + yangHui[i - 1][j];
}
}
}
// 输出杨辉三角形
for (int i = 0; i < n; i++) {
for (int j = 0; j <= i; j++) {
System.out.print(yangHui[i][j] + " ");
}
System.out.println();
}
}
}
```
输出结果:
```
1
1 1
1 2 1
1 3 3 1
1 4 6 4 1
1 5 10 10 5 1
1 6 15 20 15 6 1
1 7 21 35 35 21 7 1
1 8 28 56 70 56 28 8 1
1 9 36 84 126 126 84 36 9 1
```