Задачу можно решать, например, таким образом. Переведем заданное во входном файле время в секунды, считая началом отсчета начало суток. Например, время 12:30:00 соответствует 12 * 3600 + 30 * 60 = 45000 секундам. Аналогично переведем требуемый интервал в секунды и прибавим его к начальному моменту времени — получим требуемое время, только заданное в секундах. Затем переведем это время в требуемый формат и выведем в выходной файл. При таком решении единственная возникающая проблема заключается в том, что полученный ответ может превысить максимально допустимое значение типа данных LongInt. Для хранения числа секунд можно было использовать тип данных Int64 языка FreePascal или тип данных long long int языка GCC. Другой подход к решению состоит в том, что к начальному числу секунд прибавляется число секунд временного интервала, полученное число секунд переводится в минуты и секунды, минуты “запоминаются”, а секунды записываются как секунды ответа. Далее прибавим число минут интервала и “запомненные” минуты к начальным минутам, опять “запомним” лишние часы и т.д. При таком решении типа данных LongInt достаточно .