Ввод времени и разбивка на часы, минуты, секунды - C#
Формулировка задачи:
Всем доброго дня суток.
Задача: Описать подпрограмму IncTime (H, M, S, T), которая увеличивает на T секунд время, заданное в часах H, минутах M и секундах S (H, M и S - входные и выходные параметры, T - входной параметр; все параметры - целые положительные). Дано время (в часах H, минутах M, секундах S) и целое число T. Используя подпрограмму IncTime, увеличить настоящее время на T секунд и вывести новые значения H, M, S.
Мое решение:
Мои замечания к моему коду: Мы прописываем число T (секунды), и когда мы вводим например 60, это число вписывается в поле секунды 60, это у меня вышло, но если мы вводим например 124, оно вписывается полностью в 124 секунды, а должно было 2 минуты 4 секунды. Еще пример вводим 3678 должно выйти 1 час 1 минута 18 секунд. Как это реализовать?
private static void UseOutputParameters_8_out() { Console.WriteLine( "\n--- UseOutputParameters_8_out ---"); Console.WriteLine( "Используя подпрограмму IncTime, увеличить настоящее время на T секунд и вывести новые значения H, M, S"); Console.WriteLine("\t Введите число T"); int T = EnterInt32("Число"); int H, M, S; IncTime(T, out H, out M, out S); Console.WriteLine("Часов: {0}, Минут {1} Секунд {2}", H, M, S); } public static void IncTime(int T, out int H, out int M, out int S) { H = 0; M = 0; S = 0; if (T % 3600==0) { H = (H + T) / 3600; } else if (T%60==0) { M = (M + T) / 60; } else if (T%1==0) { S = S + T; } }
Решение задачи: «Ввод времени и разбивка на часы, минуты, секунды»
textual
Листинг программы
if (T>=3600){ H = (T-(T%3600))/3600; T = T - H*3600; } if (T>=60) { M = (T-(T%60))/60; T = T - M*60; } S=T;
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д