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

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.

Leave a Comment

11 − 1 =