Convert seconds to compound duration: Difference between revisions

Content added Content deleted
m (added whitespace before the TOC (table of contents), elided the forced TOC tag (__TOC__).)
Line 1,296: Line 1,296:
86400: 1 d
86400: 1 d
6000000: 9 wk, 6 d, 10 hr, 40 min</lang>
6000000: 9 wk, 6 d, 10 hr, 40 min</lang>

=={{header|Liberty BASIC}}==
I got a bit carried away and added 'years'...
<lang lb>
[start]
input "Enter SECONDS: "; seconds
seconds=int(abs(seconds))
if seconds=0 then print "Program complete.": end
years=int(seconds/31449600): seconds=seconds mod 31449600
weeks=int(seconds/604800): seconds=seconds mod 604800
days=int(seconds/86400): seconds=seconds mod 86400
hours=int(seconds/3600): seconds=seconds mod 3600
minutes=int(seconds/60): seconds=seconds mod 60
select case years
case 0
case 1: print years; " year";
case else: print years; " years";
end select
select case weeks
case 0
case 1: if years then print ", ";
print weeks; " week";
case else: if years then print ", ";
print weeks; " weeks";
end select
select case days
case 0
case 1: if years or weeks then print ", ";
print days; " day";
case else: if years or weeks then print ", ";
print days; " days";
end select
select case hours
case 0
case 1: if years or weeks or days then print ", ";
print hours; " hour";
case else: if years or weeks or days then print ", ";
print hours; " hours";
end select
select case minutes
case 0
case 1: if years or weeks or days or hours then print ", ";
print minutes; " minute";
case else: if years or weeks or days or hours then print ", ";
print minutes; " minutes";
end select
select case seconds
case 0
case 1: if years or weeks or days or hours or minutes then print ", ";
print seconds; " second";
case else: if years or weeks or days or hours or minutes then print ", ";
print seconds; " seconds";
end select
print
goto [start]
</lang>
{{out}}
<pre>
Enter SECONDS: 100
1 minute, 40 seconds
Enter SECONDS: 7259
2 hours, 59 seconds
Enter SECONDS: 86400
1 day
Enter SECONDS: 6000000
9 weeks, 6 days, 10 hours, 40 minutes
Enter SECONDS: 987654321
31 years, 21 weeks, 4 hours, 25 minutes, 21 seconds
Enter SECONDS:
Program complete.
</pre>


=={{header|Lua}}==
=={{header|Lua}}==