You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python兔子繁殖程序求助:新手代码逻辑问题

修正你的兔子繁殖计算程序

嘿,作为Python新手,咱们先把这个兔子繁殖的规律捋明白,再改代码就轻松啦!

先理清繁殖规律

你给出的数值里藏着很明显的规律哦:

  • 初始(0个月):2只兔子
  • 1个月后:6只 → 6 = 2 × 3
  • 2个月后:18只 → 18 = 6 × 3
  • 3个月后:54只 → 54 = 18 × 3

简单说就是每个月的总兔数是前一个月的3倍!这个倍数的由来也很好理解:每对兔子(2只)每月产下4只幼兔,相当于每对兔子变成了6只(原2只+4只幼兔),也就是原来的3倍,所以整体总数每月乘以3就对了。

你的原代码问题

  • input()获取的是字符串类型,直接和数字0比较会报错,得先转成整数
  • 循环里的计算逻辑完全没遵循每月乘3的规律,用了错误的公式,导致结果完全不对

修正后的代码

# 获取月份数,转成整数类型避免报错
months = int(input("Enter number of months: "))

# 初始兔子数量设为2只(对应0个月的状态)
total_rabbits = 2

# 处理0个月的特殊情况
if months == 0:
    print(total_rabbits)
else:
    # 循环对应月份数,每次总数乘以3
    for _ in range(months):
        total_rabbits *= 3
    print(f"Total rabbits after {months} months: {total_rabbits}")

代码简单解释

  • 第一步把输入的月份转成整数,解决类型不匹配的问题
  • 初始总数设为2,这样1个月后乘3就是6,完全符合你给的参考数值
  • 用for循环模拟每个月的繁殖过程,每次把总数乘以3,循环次数就是输入的月份数
  • 用f-string输出结果,让信息更清晰直观

测试一下:

  • 输入1,输出6 ✔️
  • 输入2,输出18 ✔️
  • 输入3,输出54 ✔️

这样就完全符合你给出的繁殖数量啦!

内容的提问来源于stack exchange,提问作者moose

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.28 09:46:14