How do I turn an integer into clock time

4 views (last 30 days)
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 Comments
dpb
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...

Sign in to comment.

Accepted Answer

SaiDileep Kola
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

More Answers (0)

Categories

Find more on Data Type Conversion in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!