用字符数组输出杨辉三角
时间: 2024-12-14 08:25:44 浏览: 7
杨辉三角是一种二项式系数的可视化表示,通常用星号(*)和空格的形式呈现。每个数字代表组合数 C(n,k),其中 n 和 k 都是从 0 开始的非负整数,且 n >= k。三角形的每一行代表组合数的一个层级,从左到右分别是阶乘的一半。
下面是一个简单的 Python 示例,演示如何使用字符数组打印杨辉三角:
```python
def print_pascal_triangle(n):
triangle = [[' ']*n for _ in range(n)]
for i in range(n):
for j in range(i + 1):
if j == 0 or j == i:
triangle[i][j] = '*'
else:
triangle[i][j] = str(binom(i, j))[-1]
print(''.join(triangle[i]))
# binom 函数计算组合数 (n choose k) = n! / (k!(n-k)!)
import math
def binom(n, k):
return math.factorial(n) // (math.factorial(k) * math.factorial(n - k))
print_pascal_triangle(5)
```
运行这个程序会输出前5行的杨辉三角。每一行都是一个字符数组,星号(*)代表1,其他位置的数字则代表组合数的具体值。
阅读全文