如果我计算加班,超过20分钟计半小时,达到50分钟算1小时,
这个函数该如何写
问题已解决
所属话题:
#实务#
84785022 | 提问时间:2023 01/24 16:47
函数的格式如下:
def overtime(minutes):
hours = 0
if minutes < 0:
return -1
elif minutes <= 20:
hours = 0
elif minutes <= 50:
hours = 0.5
else:
hours = 1 + (minutes-50)/60
return hours
加班时间的计算其实也可以用科学计算方法来实现,我们知道,1分钟等于60秒,1小时等于60分钟,因此,把超过20分钟计半小时,达到50分钟算1小时这样的计算标准,我们可以表示为:20 x 60 = 50 x 60 x 0.5,所以可以用算式来表示:
hours = (minutes - 20 * 60) / (60 * 60)
其中,minutes为传入的时间值,表示以分钟为单位的加班时间。这样,我们可以得到一个更加简洁的函数实现:
def overtime(minutes):
if minutes < 0:
return -1
else:
return (minutes - 20 * 60) / (60 * 60)
拓展知识:
计算加班时间的函数可以使用条件分支的方式来实现,也可以使用算术运算的方式来实现,当然,同样还可以使用更复杂的算法,比如构建一个树来实现计算,或者使用分支定界算法。
2023 01/24 16:53
相关问答
查看更多最新问答
查看更多