Convert Time Given in Seconds to Minute, Seconds, Milliseconds
137 次查看(过去 30 天)
显示 更早的评论
Hi all,
I am trying to convert a time given in seconds such as 183.55s into minute, seconds, milliseconds.
For minute, I'm using: init_mn=fix(init_time/60), which gives me the correct answer.
How can I obtain the seconds and miliseconds without rounding?
Thank you in advance!
0 个评论
回答(4 个)
Star Strider
2021-8-5
This is simply a straightforward format change:
t = seconds(183.55)
t.Format = 'hh:mm:ss.SSS'
producing the desired result.
.
0 个评论
Chunru
2021-8-5
[h, m, s] = hms(duration([0 0 183.55]))
% for sec and fractional sec
si = floor(s)
sf = s-si
0 个评论
Stephen23
2021-8-5
If you really need minutes (i.e. and not roll-over to hours for >59 minutes) then you can calculate this yourself, e.g.:
inp = 7654.321; % time in seconds
t_min = ceil(1000*inp);
t_ms = mod(t_min,1000) % milliseconds
t_min = fix(t_min/1000);
t_sec = mod(t_min,60) % seconds
t_min = fix(t_min/60) % minutes
0 个评论
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Dates and Time 的更多信息
产品
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!