DECLARE SUB UnpackTime (T!, H%, M%, S%)
DECLARE FUNCTION PackTime! (H%, M%, S%)
REM Упаковка и распаковка показаний часов
CLS
H% = 18: M% = 0: S% = 0
T = PackTime(H%, M%, S%)
PRINT USING "##:##:## = ###.##"; H%; M%; S%; T
T = .5
UnpackTime T, H%, M%, S%
PRINT USING "##:##:## = ###.##"; H%; M%; S%; T
END
FUNCTION PackTime (H%, M%, S%)
' Упаковка времени - перевод часов (H)
' минут (M) и секунд (S) в часть суток
PackTime = (H% * 3600! + M% * 60 + S%) / 86400!
END FUNCTION
SUB UnpackTime (T, H%, M%, S%)
' Распаковка времени - перевод части суток
' в часы (H), минуты (M) и секунды (S)
t1! = T * 86400
H% = INT(t1! / 3600!)
t1! = t1! - 3600! * H%
M% = INT(t1! / 60!)
S% = INT(t1! - 60! * M%)
END SUB