杨辉-帕斯卡三角形
程序员文章站
2022-03-06 08:02:32
...
题目内容:
帕斯卡三角形,又称杨辉三角形是二项式系数在三角形中的一种几何排列。帕斯卡三角形通常从第0行开始枚举,并且每一行的数字是上一行相邻两个数字的和。在第0行只写一个数字1,然后构造下一行的元素。将上一行中数字左侧上方和右侧上方的数值相加。如果左侧上方或者右侧上方的数字不存在,用0替代。下面给出6行的帕斯卡三角形:
1
1 1
1 2 1
1 3 3 1
1 4 6 4 1
1 5 10 10 5 1
编写程序,输入帕斯卡三角形的高度 n,然后生成和上面例子一样风格的三角形。
输入格式:
一个正整数 n
输出格式:
相应高度的帕斯卡三角形,两个数字之间有一个空格
输入样例:
6
输出样例:
1
1 1
1 2 1
1 3 3 1
1 4 6 4 1
1 5 10 10 5 1
# coding: utf-8
def yanghui_triangle( n ):
yanghui = []
for i in range(n):
row = [1]*(i+1)
#第一项row[0]和最后项row[-1]都是1,不需要更改
if i >1:
for j in range(1,i):
#错误:yanghui[i-1][j-1] + yanghui[i-1][j+1]
row[j] = yanghui[i-1][j-1] + yanghui[i-1][j]
yanghui.append(row)
for row in yanghui:
for val in row:
print(val,end = " ")
print()
n = eval(input())
yanghui_triangle( n )
上一篇: 算法练习——Pascal三角形