2024.5.14(周二)

【题目描述】输出n(0<n)行杨辉三角形,n由用户输入。
【练习要求】请给出源代码程序和运行测试结果,源代码程序要求添加必要的注释。
【输入格式】一行中输入1个整数n。
【输出格式】输出n行杨辉三角形,每个数的显示格式:占5位,右对齐。
【输入样例】3
【输出样例】 1 1
1 2 1
1 3 3 1

n = int(input("请输入要打印的杨辉三角的行数: "))
# 初始化杨辉三角的第一行
triangle = [[1]]
# 循环生成杨辉三角
for i in range(1, n):
    # 初始化当前行的第一个元素为1
    row = [1]
    # 循环生成当前行的中间元素
    for j in range(1, i):
        # 当前元素等于上一行中前一个元素和同一位置元素的和
        element = triangle[i - 1][j - 1] + triangle[i - 1][j]
        # 将当前元素加入当前行
        row.append(element)
    # 将当前行的最后一个元素设为1
    row.append(1)
    # 将当前行加入杨辉三角
    triangle.append(row)

# 循环输出杨辉三角
for i in range(n):
    # 计算当前行前面需要填充的空格数量
    spaces = ' ' * (n - i)
    # 用join函数将当前行中的数字转为字符串,并用空格连接
    # 然后再在前面添加空格,输出当前行
    print(spaces + ''.join(map(str, triangle[i])))
n = int(input("请输入要打印的杨辉三角的行数: "))
# 初始化杨辉三角的第一行
triangle = [[1]]
# 循环生成杨辉三角
for i in range(1, n):
    # 初始化当前行的第一个元素为1
    row = [1]
    # 循环生成当前行的中间元素
    for j in range(1, i):
        # 当前元素等于上一行中前一个元素和同一位置元素的和
        element = triangle[i - 1][j - 1] + triangle[i - 1][j]
        # 将当前元素加入当前行
        row.append(element)
    # 将当前行的最后一个元素设为1
    row.append(1)
    # 将当前行加入杨辉三角
    triangle.append(row)

# 循环输出杨辉三角
for i in range(n):
    # 计算当前行前面需要填充的空格数量
    spaces = ' ' * (n - i)
    # 用join函数将当前行中的数字转为字符串,并用空格连接
    # 然后再在前面添加空格,输出当前行
    print(spaces + ''.join(map(str, triangle[i])))

 

posted @ 2024-05-29 09:07  记得关月亮  阅读(8)  评论(0编辑  收藏  举报