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

如何让这款简易加速度计算器循环运行直至手动停止?当前仅循环两次即终止

解决加速度计算器循环次数限制的问题

你的代码只能运行两次的原因很明确:第一次调用main()完成计算后,你询问用户是否继续,若用户选择yes会再执行一次main(),但这次计算结束后没有后续的询问逻辑,程序直接终止。要实现持续循环直到用户主动停止,你需要用无限循环+退出条件的结构,具体修改如下:

修改后的完整代码

print('Welcome to acceleration calculator!')

def main():     
    iv = input('initial velocity (m/s): ')
    fv = input('final velocity (m/s): ') 
    t = input('time (s): ')
   
    # 简化计算与输出逻辑,移除不必要的嵌套函数
    a = (float(fv) - float(iv)) / float(t)
    print(f'The acceleration is {a} m/s²')

# 用while True创建无限循环,直到用户触发退出条件
while True:
    main()
    # 处理用户输入:忽略大小写与前后空格,简化判断逻辑
    again = input("Would you like to calculate acceleration again? yes/no?: ").strip().lower()
    # 输入非yes/y时,退出循环并结束程序
    if again not in ["yes", "y"]:
        print("Thanks for using my calculator!")
        print('Acceleration calculator by Elias©')
        break

关键修改点

  • 用while True构建无限循环,每次循环都会执行计算逻辑,之后询问用户是否继续
  • 对用户输入做strip().lower()处理,无论用户输入YES、Yes、y还是yes,都能正确识别为继续指令
  • 简化原代码中嵌套的acceleration函数,直接用f-string输出结果,让代码更简洁易读
  • 修复了原代码里的拼写错误:intial → initial

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.19 09:57:17