From 271959a7ea324d833c245cecfc586ef140693578 Mon Sep 17 00:00:00 2001 From: Igor Pashev Date: Mon, 28 Nov 2022 19:05:57 +0200 Subject: Update Haskell --- gcd.hs | 13 ++++++------- 1 file changed, 6 insertions(+), 7 deletions(-) diff --git a/gcd.hs b/gcd.hs index b044c85..e868a1b 100644 --- a/gcd.hs +++ b/gcd.hs @@ -14,17 +14,16 @@ or: -} import System.Environment (getArgs) -gcd2 :: Integer -> Integer -> Integer +gcd2 :: Integral a => a -> a -> a gcd2 a 0 = a gcd2 a b = gcd2 b (a `rem` b) -gcdn :: [Integer] -> Integer +gcdn :: Integral a => [a] -> a gcdn = foldl1 gcd2 -str2int :: String -> Integer -str2int = read +out :: [String] -> IO () +out [] = return () +out a = print (gcdn (map read a) :: Integer) main :: IO () -main = do - a <- getArgs - print $ gcdn (map str2int a) +main = getArgs >>= out -- cgit v1.2.3