Compute the Angle of the Hour and Minute Hand on a Clock
- 时间:2020-09-13 14:33:25
- 分类:网络文摘
- 阅读:154 次
Given a time in the format of hour and minute, calculate the angle of the hour and minute hand on a clock.

Clock 3:30
This was recently asked by Microsoft. This is not a difficult question. We want to make sure that:
- The time could be in the format 24-hour. For example, 15:30 is the same as 3:30.
- The hour minute also moves slightly (portion) when minute hand moves.
- One minute difference has a 6 rad degree – 60 minutes is 360 degree.
Thus, the following Python code should be straigtforward with O(1) constant in both time and space – just pure math calculations.
1 2 3 4 5 6 7 8 9 10 11 | def calcAngle(h, m): # hour hand gets percentage angle h = (h + (m / 60.0)) * 5 % 60 diff = abs(h - m) return int(diff * 6) if __name__ == "__main__": print(calcAngle(3, 30)) # 75 print(calcAngle(12, 30)) # 165 |
def calcAngle(h, m): # hour hand gets percentage angle h = (h + (m / 60.0)) * 5 % 60 diff = abs(h - m) return int(diff * 6) if __name__ == "__main__": print(calcAngle(3, 30)) # 75 print(calcAngle(12, 30)) # 165
A slightly different solution in C/C++ can be found here: C/C++ Program to Compute the Angle Between Hands of a Clock
–EOF (The Ultimate Computing & Technology Blog) —
推荐阅读:山东启动打击非法保健食品专项行动 盘点那些不科学不健康的饮食习惯 养生推荐:几种最牛的常见抗衰老食物 营养健康食品系列:休闲干果开心果 营养健康食品:向日葵的种子葵花籽 酿造酒之黄酒和白酒的营养价值 葡萄酒及啤酒的营养保健价值 保健食品广告九成以上虚假违法 生吃鸡蛋易引起沙门氏菌食物中毒 由副溶血弧菌污染引起的食物中毒
- 评论列表
-
- 添加评论