何为杨辉三角,杨辉三角就是,第一行与第二行分别为1和1,1 再往后第三行就有规律了,除了开头和结尾的数(都是1),每个数都是自己左上角和右上角的和。如图:
如何用编程把它实现呢?我们可以发现,每一行的组成都是使用了一个方法 ,所以我们不妨给它写成一个函数,一次又一次地调用。这个函数我们可以只针对每一行的中间的数(即除了开头和结尾的1),把每一行想成一个列表,把中间的一求,求一个,加一个。好了,有了这样的思路,我们就可以轻松愉快的开始我们的编程之旅~~~
print('[1]')
print('[1,1]') # 前两行啥规律没有,直接打印
a=[1,1] # 最终的打印结果
b=[1] # 一个小小的工具‘人’,只打出前面的1,后面的1等中间的数来了之后再断后。
def yh(a,b):c=0 # 每行有规律的数字for i in range(len(a)-1): # i为索引号 c=a[i]+a[i+1] # 累加b.append(c) # 添加b.append(1) # 断后return b
for x in range(4): # 这里调用四次,可以改,可以添加一个input让用户自己输入a=yh(a,b) # 把成品给ab=[1] # b继续当工具人print(a)
如此,就可以结束啦,当然,还有很多的好方法 等待着你们去挖掘.......