Python
Вот задача: користувач вводить години та хвилини. Прорахувати мінімально можливий час:
А) До того як дві стрілки на циферблату будуть паралельно
Б) Перпендикулярно
До завтра ( 23.12 ) мне нужно это здать ( ещё завтрашнем утром можно будет )
Ответы
А) попробуй
Щоб прорахувати мінімально можливий час, до того як дві стрілки на циферблаті будуть перпендикулярно, можна застосувати наступний алгоритм:
- Розділити кількість хвилин на 60, щоб отримати кількість годин у цьому часі.
- Додати цю кількість годин до кількості введених користувачем годин.
- Підрахувати різницю між годинною та хвилинною стрілками. Якщо різниця менша за 180, то повернути цю різницю. Якщо більша, то повернути 360 мінус цю різницю.
- Додати результат до кількості годин, отриманих у першому кроці.
hours = int(input("Enter the number of hours: "))
minutes = int(input("Enter the number of minutes: "))
total_minutes = hours * 60 + minutes
hours = total_minutes // 60
minutes = total_minutes % 60
hour_difference = hours - minutes
if hour_difference < 0:
hour_difference = -hour_difference
if hour_difference > 30:
hour_difference = 60 - hour_difference
total_minutes += hour_difference
print("The minimum time until the hands are parallel is", total_minutes // 60, "hours and", total_minutes % 60, "minutes.")
Б) попробуй
Щоб прорахувати мінімально можливий час, до того як дві стрілки на циферблаті будуть перпендикулярно, можна застосувати наступний алгоритм:
- Розділити кількість хвилин на 60, щоб отримати кількість годин у цьому часі.
- Додати цю кількість годин до кількості введених користувачем годин.
- Підрахувати різницю між годинною та хвилинною стрілками. Якщо різниця менша за 180, то повернути цю різницю. Якщо більша, то повернути 360 мінус цю різницю.
- Додати результат до кількості годин, отриманих у першому кроці.
hours = int(input("Enter the number of hours: "))
minutes = int(input("Enter the number of minutes: "))
total_minutes = hours * 60 + minutes
hours = total_minutes // 60
minutes = total_minutes % 60
angle_difference = abs(hours * 30 - minutes * 6)
if angle_difference > 180:
angle_difference = 360 - angle_difference
total_minutes += angle_difference * 12
print("The minimum time until the hands are perpendicular is", total_minutes // 60, "hours and", total_minutes % 60, "minutes.")
код не мой, это нейронка chatgpt, может помог