Практика программирования (Бейсик, Си, Паскаль)

         

Задачи, советы и ответы - часть 17


/* Распаковка времени - перевод части суток */

/* в часы (Н), минуты (М) и секунды (S) */

{

double tl;

t1=t*86400;

*H=t1/3600.0;

t1=t1-3600.0*(*H);

*M=t1/60.0;

*S=t1-60.0*(*M);

}

Программа 9_09.pas

program pack_unpack;

uses Crt;

var

H,M,S:integer;

Т:double;

function pack_time(H,M,S:integer):double;

{ Упаковка времени - перевод часов (Н)минут (М) и секунд (S) в часть суток } begin

pack_time:=(H*3600.0+M*60+S)/86400.0;

end;

procedure unpack_time(t:double;var H,M,S:integer);

{ Распаковка времени - перевод части суток

в часы (Н), минуты (М) и секунды (S) }

var

t1:double; begin

t1:=t*86400;

H:=trunc(t1/3600.0) ;

t1:=t1-3600.0*H;

M:=trunc(t1/60.0);

S:=trunc(t1-60.0*M);

end;

begin {main}

clrscr;

H:=18; M:=0; S:=0;

T:=pack_tiine(H,M,S) ;

writeln(H:2,': ',M:2, ': ',S:2, ' =',T:6:2);

T:=0.5;

unpack_time(T,H,M,S);

writeln(H:2, ': ',M:2, ': ',S:2, ' =',T:6:2);

readln;

end.




Содержание  Назад