12 lines
435 B
Haskell
12 lines
435 B
Haskell
|
shortLengthsRecur :: [String] -> Int
|
||
|
shortLengthsRecur [] = 0
|
||
|
shortLengthsRecur (x : xs) = if l <= 5 then l + shortLengthsRecur xs else shortLengthsRecur xs
|
||
|
where
|
||
|
l = length x
|
||
|
|
||
|
shortLengthsListComp :: [String] -> Int
|
||
|
shortLengthsListComp i = sum [if length x <= 5 then length x else 0 | x <- i]
|
||
|
|
||
|
shortLengthsMapFilterFold :: [String] -> Int
|
||
|
shortLengthsMapFilterFold i = foldr (+) 0 (map length (filter (\e -> length e <= 5) i))
|