# How do I turn an integer into clock time

3 views (last 30 days)
Stephen De Leon on 28 Mar 2020
Edited: dpb on 31 Mar 2020
How do I convert or code so from a given input of 658 I get the clock time of 6:58. So that it would be something like this:
Input time based on a 24-hour clock: 658
You entered 6:58
The equivalent time based on a 12-hour clock is 6:58 AM
##### 2 CommentsShowHide 1 older comment
dpb on 28 Mar 2020
Amplifying on Walter's hint...
timestr=@(n) sprintf('Clock time: %2d:%02d',fix(n/100),mod(n,100));
>> timestr(658)
ans =
'Clock time: 6:58'
>>
Salt to taste...

SaiDileep Kola on 31 Mar 2020
Edited: dpb on 31 Mar 2020
In addition to the hints given, this would entirely solve your problem
function Time = findclocktime(I)
flag = 'am';
if(I >= 1300)
I = I - 1200;
flag = 'pm';
end
Time = sprintf('Clock time: %2d:%02d %s',fix(I/100),mod(I,100),flag);
end

### Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by