jmu-python-函数-找钱_6-1 jmu-python-杨辉三角

根据输入的n打印n行杨辉三角型。

函数接口定义:

printYanghui(n):#打印n行杨辉三角型

裁判测试程序样例:

/* 请在这里填写答案 */

n = int(input())

printYanghui(n)

输入格式:

输入n,转化为整数

输出格式:

每个数后面均有一个空格。

输入样例:

5

输出样例:

1

1 1

1 2 1

1 3 3 1

1 4 6 4 1

此题我提供一种思路:先打表,将表中第二行第二个元素(在range中其实是第一行第一个)。每一个元素n[i][i]可以看成 n[i-1][i] + n[i-1][i-1] 这样用循环就可以计算出每一个位置的数字,在格式化输出即可。

def printYanghui(n):

numbers = []

for line in range(n + 1):

numbers += [[]]

for i in range(n + 1):

numbers[line] += [0] #将表中每个元素的初始值都设为0

numbers[1][1] = 1 #设置杨辉三角中首元

for line in range(2, n + 1):

for i in range(1, n + 1):

numbers[line][i] = numbers[line - 1][i] + numbers[line - 1][i - 1]

for line in range(1, n + 1): #格式化输出

for space in range(n - line):

print(" ", end='')

for i in range(1, line + 1 ):

print(numbers[line][i], end=" ")

print()

n = int(input())

printYanghui(n)

你可能感兴趣的:(jmu-python-函数-找钱_6-1 jmu-python-杨辉三角)