hour = int(input("Starting time (hours): "))
mins = int(input("Starting time (minutes): "))
dura = int(input("Event duration (minutes): "))
minresult = ((mins + dura) % 60)
hourresult = (((60// dura) + hour) % 24)
print("The event will end on", hourresult,":" ,minresult)
如果输入为23、58和642,则预期结果为10:40,但我的程序打印23:40
实际上,代码中的问题是,在第5行中,它应该是
dura// 60
,而不是60// dura
此外,在测试用例中,您将23作为输入,持续数小时,因此预期结果应该是9小时,而不是10小时。这是因为它也考虑到了24小时。你的642分钟等于10小时42分钟,因此,23+1小时=24小时,即完成1天,剩下9小时。剩下的9个小时加到另一天,输出变成9
你认为分钟实际上是1小时,也就是24小时,所以它应该显示10作为一个输出。因此,对于这一点,你已经分别计算了小时和分钟,因此那些实际上构成一个完整小时的分钟不会显示在输出中
因此,为了获得正确的输出,您必须将第5行替换为
由于
int((mins + dura)/60)
将占会议总时间的整数部分,会议将以分钟为单位,以60分为单位转换为小时如果您使用的是Jupyter笔记本电脑,请尝试使用%%time。这将节省大量时间。希望能有帮助
试试这个-您需要将分钟添加到hourresult计算中,并反转除法
相关问题 更多 >
编程相关推荐