我很难在模拟时钟python中计算时针和午夜之间的度数大小。再次,这是Snakify Python解决问题的一部分,自从我上次的通信以来,我已经解决了各种问题但是,相当合理的是,这被标记为“非常难”。所以,这是我的代码......有人能告诉我我做错了什么吗?感谢上帝,这个问题中没有浮点数,但这次问题可能是算法......所以:
H = int(input())
M = int(input())
S = int(input())
hours = H * 3600
minutes = M * 60
seconds = S
time = hours + minutes + seconds
calc = time / 86400
deg = calc * 3.6
print(deg)
非常感谢。
答案 0 :(得分:1)
您已在几秒钟内正确计算了time
我们先把它转换成小时:
time_in_hours = time / 3600
结果是浮动,但你真的不需要担心。
time_in_hours
可以小于或大于12(当时间持续飞行时,它可以大于24,36或其他......)
由于我们的时钟显示12小时,因此我们只对剩余时间感兴趣,因为我们尽可能多地删除了12个小时的完整时间。这是除法的余数12,您可以使用模运算符%
计算:
remainder = time_in_hours % 12
我们现在可以用度数转换它。我们知道12小时对应360度,所以每小时360/12 = 30度。
所以你的角度很简单:
angle = remainder * 30
答案 1 :(得分:0)
3.6
来自哪里?这应该是360
(整个圆圈的度数)。此外,如果您的模拟时钟是12小时,但您的输入使用24小时制,则应使用H % 12
而不是H
。
答案 2 :(得分:0)
a = float(input())
mintue_deg=float (((a*60/30)*(90/15))%360)
print(mintue_deg)