Идет k-я секунда суток. Определить, сколько полных часов (h) и полных минут (m) прошло к этому моменту. Пример: 6042 секунда – это 1 час и 40 минут. Пользователь вводит k.
Вообщем только начинаю программировать, не пинайте сильно)
Не понимаю как ее решить, как сделать ограничения по типу в 1 минуте 60 секунд, он мне в ответе выводит сотками 100 секунд и тд.
Делением с остатком, разумеется.
// - целое от деления, % - остаток от деления.
Сначала делим на самое большое:
6042//3600 = 1 (один целый час)
6042%3600 = 2442 секунд остаётся при делении.
Теперь берем уже остаток: 2442 и его делим дальше:
2442//60 = 40 минут
2442%60 = 42 секунды.
Ох, как же я люблю эти дебильный непонятные задачи для изучения ЯП. Щас начеркаю у себя, если получится скину.
Если вопросы есть, пиши: k = int(input("Введите количество секунд (0-86400): ") secund_v_dne = 86400 if 0 <= k < secund_v_dne: h = k // 3600 ostavshiesya_sekundi = k % 3600 m = ostavshiesya_sekundi // 60 print(f"{k} секунд - это {h} час(ов) и {m} минут(ы)." else: print("Введите количество секунд в диапазоне от 0 до 86400."
k = int(input()) # целое, а не вещественное
hx = k // 3600 # кол-во полных часов от начала суток
mx = k // 60 % 60 # кол-во полных минут от начала текущего часа
print(hx, mx)
Напишу подробнее, ибо едва ли ты понял, что люди тут писали.
Пусть дано 6042 секунд.
Для начала посчитаем количество целых часов при помощи целочисленного деления
6042 // 60 - узнаем количество целых минут
как узнать из минут часы? Надо снова поделить на 60. Т.е получается 6042 // 60 // 60,
вместо этого мы просто пишем 6042 // 3600. 6042 // 3600 = 1 ч
Далее узнаем количество минут
Мы уже выяснили, что 6042 // 60 - количество минут, но оно может быть больше 60. Для того чтоб избавиться от лишних минут воспользуемся остатком от деления. 6042 // 60 % 60 = 100 % 60 = 40 мин