Convert Time Given in Seconds to Minute, Seconds, Milliseconds
170 views (last 30 days)
Show older comments
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 Comments
Answers (4)
Star Strider
on 5 Aug 2021
This is simply a straightforward format change:
t = seconds(183.55)
t.Format = 'hh:mm:ss.SSS'
producing the desired result.
.
0 Comments
Chunru
on 5 Aug 2021
[h, m, s] = hms(duration([0 0 183.55]))
% for sec and fractional sec
si = floor(s)
sf = s-si
0 Comments
Stephen23
on 5 Aug 2021
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 Comments
See Also
Categories
Find more on Dates and Time in Help Center and File Exchange
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!