Enable Javascript in your browser and then refresh this page, for a much enhanced experience.
Interesting mission solution in Clear category for Clock Angle by Kolia951
from datetime import datetime
def clock_angle(time):
time_obj = datetime.strptime(time, "%H:%M")
hour = int(time_obj.strftime("%I"))
hour = 0 if hour == 12 else hour
minute = int(time_obj.strftime("%M"))
hour_angle = (hour * 30) + (0.5 * minute)
min_angle = minute * 6
total_angle = abs(min_angle - hour_angle)
if total_angle > 180:
return 360 - total_angle
return total_angle
if __name__ == '__main__':
#These "asserts" using only for self-checking and not necessary for auto-testing
assert clock_angle("02:30") == 105, "02:30"
assert clock_angle("13:42") == 159, "13:42"
assert clock_angle("01:42") == 159, "01:42"
assert clock_angle("01:43") == 153.5, "01:43"
assert clock_angle("00:00") == 0, "Zero"
assert clock_angle("12:01") == 5.5, "Little later"
assert clock_angle("18:00") == 180, "Opposite"
Dec. 23, 2022
Comments: