题目
一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问第m个月的兔子总数为多少?

题目分析:
每个月的兔子对数:1,1,2,3,5,8,13,21……
看规律,即是斐波那契数列。

代码:

# 题目:
# 古典问题:
# 有一对兔子,从出生后第3个月起每个月都生一对兔子,
# 小兔子长到第三个月后每个月又生一对兔子,
# 假如兔子都不死,问第m个月的兔子总数为多少?


def r_sum(n):
    if n == 1 or n == 2:
        return 1
    else:
        return r_sum(n-1) + r_sum(n-2)


m = int(input("请输入月数:"))
print("第 %d 个月有 %d 对兔子" % (m, r_sum(m)))

运行结果:
在这里插入图片描述

Logo

汇聚全球AI编程工具,助力开发者即刻编程。

更多推荐