当前位置:首页python > 正文

python题目:有5个人坐在一起,问第五个人多少岁?他说比第4个人大2岁。问第4个人岁数,他说比第3个人大2岁。问第三个人,又说比第2人大两岁。问第2个人,说比第一个人大两岁。最后问第一个人,他说是10岁。请问第五个人多大?

作者:野牛程序员:2024-11-12 09:24:55python阅读 2492
python题目:有5个人坐在一起,问第五个人多少岁?他说比第4个人大2岁。问第4个人岁数,他说比第3个人大2岁。问第三个人,又说比第2人大两岁。问第2个人,说比第一个人大两岁。最后问第一个人,他说是10岁。请问第五个人多大?

python题目:有5个人坐在一起,问第五个人多少岁?他说比第4个人大2岁。问第4个人岁数,他说比第3个人大2岁。问第三个人,又说比第2人大两岁。问第2个人,说比第一个人大两岁。最后问第一个人,他说是10岁。请问第五个人多大?

可以通过递归的方式来解决这个问题。递归的基本思路是通过函数自己调用自己来逐步解决问题。对于这个问题,每个人的年龄都比前一个人大2岁,因此可以定义一个递归函数来计算第n个人的年龄。

以下是使用递归思想编写的Python代码:

# 递归函数,计算第n个人的年龄
def calculate_age(person_number):
    # 第1个人的年龄是10岁
    if person_number == 1:
        return 10
    else:
        # 每个人比前一个人大2岁
        return calculate_age(person_number - 1) + 2

# 计算第五个人的年龄
fifth_person_age = calculate_age(5)

# 输出第五个人的年龄
print("第五个人的年龄是:", fifth_person_age, "岁")
  • calculate_age(person_number) 是一个递归函数,它根据传入的person_number计算第n个人的年龄。

  • person_number == 1时,返回第一个人的年龄10岁。

  • 否则,它会递归调用calculate_age(person_number - 1),计算前一个人的年龄,并在此基础上加上2岁。

运行该程序,输出:

第五个人的年龄是: 18 岁


野牛程序员教少儿编程与信息学奥赛-微信|电话:15892516892
野牛程序员教少儿编程与信息学竞赛-微信|电话:15892516892
  • python
  • 最新推荐

    热门点击