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

Python技术求助:种群起始增量未正常显示,代码输出结果异常

修复种群增长计算的异常问题

嘿,我来帮你搞定这个种群数量计算的bug!咱们先拆解下原代码里的问题:

原代码里嵌套了两层for循环,外层循环遍历天数,内层又重复循环了days-1次来计算增长——这就导致第一天就把后续所有天数的增长一次性算完了,后面的天数自然只会输出同一个数值,完全不符合“每天增长一次”的需求。

修正后的代码

organisms = int(input('Enter the starting number of organisms:' ))
increase = float(input('Enter the average daily increase (percentage): '))
days = int(input('Enter the number of days to multiply: '))

print('Day\tApproximate Population')
# 用单独变量保存当前天数的种群数量,避免修改初始值
current_pop = organisms
for day in range(1, days + 1):
    # 先输出当天的种群数量,格式化保留两位小数更清晰
    print(f'{day}\t{current_pop:.2f}')
    # 计算下一天的种群数量:当前数量 × (1 + 增长率)
    current_pop = current_pop * (1 + increase)
    # 也可以写成 current_pop += current_pop * increase,两种写法效果完全一致

关键修正说明

  • 移除多余嵌套循环:只需要一层循环遍历每一天,每天仅计算一次增长即可,内层循环是完全多余的错误逻辑
  • 单独维护当前种群数:用current_pop变量保存当天的数量,避免直接修改初始的organisms值,逻辑更清晰易懂
  • 格式化输出:通过:.2f语法保留两位小数,让输出的种群数量更直观易读

用你提供的测试参数(初始2,增长率0.3,10天)运行修正后的代码,就能看到每天的种群数量逐步增长的正确结果啦:

Day 1: 2.00
Day 2: 2.60
Day 3: 3.38
...
Day 10: 15.56

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.25 07:48:22