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

Python for循环实现数字累加4次的代码逻辑纠错求助

为什么原有代码不符合练习要求

本次循环入门练习的要求如下:

编写程序,使用for循环实现任意数字乘以4的计算。
提示:将输入数字累加至变量共4次,例如输入3时,执行3+3+3+3得到结果12。

你提交的代码如下:

#Add the input number 4 times. Ex. 3+3+3+3
#If the input is 3, the output will be 12

num = int(input("Num: "))

for x in range(2):
    num += num

print(num)

核心错误点

  • 循环次数不匹配:题目要求完成4次累加操作,range(2)仅会让循环执行2次,不满足基础的循环次数要求
  • 累加逻辑偏离要求:代码直接在存储原始输入的num变量上做运算,num += num的本质是将当前变量值翻倍,执行流程为初始值3 → 第一次循环3+3=6 → 第二次循环6+6=12,属于两次翻倍凑出了乘以4的结果,并非逐次累加原始输入值4次。只是因为2次翻倍的计算结果刚好和4次累加一致,才会在输入3时得到正确数值,本质是取巧的错误逻辑,完全达不到练习循环用法的目的。

符合要求的实现方式

要实现逐次累加原始输入4次的逻辑,需要单独保存用户输入的原始值,避免累加过程中修改参考基准,参考代码:

# 存储用户输入的原始数字,后续运算全程不修改该值
origin_num = int(input("Num: "))
# 初始化累加结果为0
result = 0
# 循环执行4次,每次累加原始输入值
for _ in range(4):
    result += origin_num

print(result)

逻辑验证

以输入3为例,代码执行流程完全匹配题目要求的计算逻辑:

  1. 初始result = 0
  2. 第一次循环:0 + 3 = 3
  3. 第二次循环:3 + 3 = 6
  4. 第三次循环:6 + 3 = 9
  5. 第四次循环:9 + 3 = 12
    最终输出12,完全符合练习要求。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.02 05:09:25