如何编写代码计算预估旅行时间?求解相关实现难题
修正后的旅行时间计算器代码
你的代码存在几个问题:
- 标题文本与示例不符(应为"Travel Time Calculator"而非"Time Traveling Calculator")
import math放在代码中间不符合Python编码规范,建议移至顶部- 计算逻辑未分离小时和分钟,直接输出了浮点数结果
hours = int("hours:")是错误写法,试图将字符串转为整数会引发报错
以下是完善后的代码,可输出符合示例的结果:
import math print("Travel Time Calculator") miles = int(input("Enter miles: ")) miles_per_hour = int(input("Enter miles per hour: ")) # 计算总旅行时间(小时,浮点数) total_hours = miles / miles_per_hour # 提取整数部分作为小时数 hours = int(total_hours) # 计算剩余小数部分对应的分钟数,四舍五入取整 minutes = round((total_hours - hours) * 60) print("\nEstimated travel time") print(f"Hours: {hours}") print(f"Minutes: {minutes}")
关键说明:
- 将
import math移至代码开头,符合Python编码规范 - 用
int(total_hours)直接获取总时间的整数部分作为小时数 - 用
(total_hours - hours) * 60计算剩余时间对应的分钟数,通过round()四舍五入得到整数分钟(匹配示例中200英里、65mph输出5分钟的结果) - 调整了输入提示的空格,与示例格式一致
- 使用f-string格式化输出,更简洁清晰
如果需要向下取整(比如4.615分钟取4),可以把round()换成int();如果需要向上取整,可使用math.ceil()。
内容的提问来源于stack exchange,提问作者Michael Pepprah
相关产品推荐
相关产品推荐

