Текущее показание электронных часов: m часов (0<=m<=23) n мин(0<=n<=59), k c(0<=k<=59). Какое время будут показывать часы через p часов, q мин, r  c?

Ответы

Ответ дал: merekekz
0
Uses crt;
function
Conv(x:byte):string;{функция преобразования чисел в строку(маска вывода)}
var
 s,t:string;
beginstr(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 ch1,mn1,sc1:byte;{начальное время}   
 chd,mnd,scd:byte;{добавленное время}   
chr,mnr,scr:byte;{результат}   
mn,ch:byte;{добавление 1 к минутам и часам, если секунд или минут >60}
begin
clrscr;
writeln('Vvedite nachalnoe vremya:');
write('  Chasy=');
readln(ch1);
write('  Minuty=');
readln(mn1);
write('  Secundy=');
readln(sc1);
writeln('Vvedite pribavlennoe vremya:');
write('  Chasy=');
readln(chd);
write('  Minuty=');
readln(mnd);
write('  Secundy=');
readln(scd);
scr:=(sc1+scd) mod 60;
mn:=(sc1+scd)div 60;
mnr:=(mn1+mnd+mn) mod 60;
ch:=(mn1+mnd+mn) div 60;
chr:=(ch1+chd+ch) mod 24;
clrscr;writeln('Nachalnoe vremya');
writeln(Conv(ch1),':',Conv(mn1),':',Conv(sc1));
writeln('vremy pribavlenia');
writeln(Conv(chd),':',Conv(mnd),':',Conv(scd));
writeln('konechnoe vremya');
writeln(Conv(chr),':',Conv(mnr),':',Conv(scr));
readkey;
end.
Ответ дал: HRAshton
0
var m, n, c, p, q, r: integer;
begin
     read(m); write(':'); read(n); write(':'); read(c);
     write(' + ');
     read(p); write(':'); read(q); write(':'); read(r);
     write(' = ');
     c := c + n * 60 + m * 60 * 60;
     r := r + q * 60 + p * 60 * 60;
     r := c + r;
     writeln(r div 3600 mod 24:2, ':', r mod 3600 div 60:2, ':', r mod 60:2);
end.
Вас заинтересует