Convert seconds to compound duration: Difference between revisions

m
→‎{{header|Haskell}}: Adjusted a pair of bound names.
(→‎{{header|Haskell}}: Parameterised both local names and assumptions about hours per day, days per week.)
m (→‎{{header|Haskell}}: Adjusted a pair of bound names.)
Line 1,786:
----------------- COMPOUND DURATION STRINGS ----------------
 
durationStringtranslation :: String -> Int -> Int -> Int -> String
durationStringtranslation local daysPerWeek hoursPerDay n =
intercalate " -> " $
[show, timePhrasedurationString daysPerWeek hoursPerDay (words local)] <*> [n]
 
timePhrasedurationString :: Int -> Int -> [String] -> Int -> String
timePhrasedurationString daysPerWeek hoursPerDay xs n =
intercalate
", "
Line 1,819:
let tests = [7259, 86400, 6000000]
putStrLn "Assuming 24/7 hrs per day:"
mapM_ (putStrLn . durationStringtranslation names 7 24) tests
putStrLn "\nor, at 8 working hours per day, 5 days per week:"
mapM_ (putStrLn . durationStringtranslation names 5 8) tests</lang>
{{Out}}
<pre>Assuming 24/7:
9,659

edits