Convert Time Given in Seconds to Minute, Seconds, Milliseconds
110 views (last 30 days)
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!
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.
KSSV on 5 Aug 2021
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