2024/5/9
所花时间:1小时
代码行:70行
博客量:1篇
了解到的知识点:
def count_ways(n):
if n == 1:
return 1
elif n == 2:
return 2
elif n == 3:
return 4
else:
# 初始化台阶数为1、2、3的情况
a, b, c = 1, 2, 4
ways = 0
# 从第4个台阶开始计算方法数
for i in range(4, n+1):
ways = a + b + c
a, b, c = b, c, ways
return ways
# 读取输入的楼梯台阶数
n = int(input())
# 计算小朋友上这段楼梯的方法数
ways = count_ways(n)
# 输出结果
print(ways)
def generate_pascal_triangle(n):
triangle = []
for i in range(n):
row = [1] * (i+1) # 初始化每行的元素为1
if i >= 2:
for j in range(1, i):
row[j] = triangle[i-1][j-1] + triangle[i-1][j] # 计算当前元素的值
triangle.append(row) # 将当前行添加到三角形列表中
return triangle
def print_pascal_triangle(triangle):
for row in triangle:
for num in row:
print(f'{num:5}', end='') # 每个数占5位,右对齐
print() # 换行
# 读取输入的行数n
n = int(input("请输入行数n:"))
# 生成并打印n行杨辉三角形
pascal_triangle = generate_pascal_triangle(n)
print_pascal_triangle(pascal_triangle)