Uses crt;
function Conv(x:byte):string;//фрматирование вывода времени в виде 01:09
var s,t:string;
begin
str(x,t);
if x=0 then s:='00'
else if (x>0)and(x<=9) then s:='0'+t
else s:=t;
Conv:=s;
end;
var m,n:byte;
p,q:byte;
ch,mn,pr:byte;
begin
clrscr;
writeln('Vvedite nachalnoe vremya:');
repeat
write(' Chasy(0-23) m=');readln(m);
until m in [0..23];
repeat
write(' Minuty(0-59) n=');readln(n);
until n in [0..59];
writeln('Vvedite pribavlennoe vremya:');
repeat
write(' Chasy=(>=0) p=');readln(p);
until p>=0;
repeat
write(' Minuty(>=0) q=');readln(q);
until q>=0;
mn:=(n+q) mod 60;//минуты=остаток от деления суммы на 60
pr:=(n+q) div 60;//перенос в часы
ch:=(m+p+pr) mod 24;//остаток от деления суммы с учетом переноса на 24
clrscr;
writeln('Nachalnoe vremya');
writeln(Conv(m),':',Conv(n));
writeln('vremy pribavlenia');
writeln(Conv(p),':',Conv(q));
writeln('konechnoe vremya');
writeln(Conv(ch),':',Conv(mn));
readkey;
end.