Convert seconds to compound duration: Difference between revisions
Convert seconds to compound duration (view source)
Revision as of 00:08, 6 September 2020
, 3 years ago→{{header|Haskell}}
(→{{header|Haskell}}: Additionally parameterised separators.) |
|||
Line 1,785:
----------------- COMPOUND DURATION STRINGS ----------------
translation :: String -> Int -> Int -> Int -> String▼
translation local daysPerWeek hoursPerDay n =▼
intercalate " -> " $▼
[show, durationString ", " " " daysPerWeek hoursPerDay (words local)] <*> [n]▼
durationString :: String -> String -> Int -> Int -> [String] -> Int -> String
Line 1,817 ⟶ 1,812:
---------------------------- TEST --------------------------
▲translation :: String -> Int -> Int -> Int -> String
▲translation local daysPerWeek hoursPerDay n =
▲ intercalate " -> " $
▲ [show, durationString ", " " " daysPerWeek hoursPerDay (words local)] <*> [n]
main :: IO ()
main = do
let names = "wk d hr min sec"
let tests = [7259, 86400, 6000000]
putStrLn "Assuming 24 hrs per day:"
mapM_ (putStrLn . translation names 7 24) tests
putStrLn "\nor, at 8 hours per day, 5 days per week:"
mapM_ (putStrLn . translation names 5 8) tests</lang>
|