Using map, filter, and . (function composition operator), define a function that
ID: 3723301 • Letter: U
Question
Using map, filter, and . (function composition operator), define a function that examines a list of strings, keeping only those whose length is odd, converts them to upper case letters, and concatenates the results to produce a single string. concatenateAndUpcaseOddLengthStrings :: [String] -> String You need to import Data.Char in order to use the toUpper function (see the skeleton code).
skelton for this problem:
concatenate :: [String] -> String
concatenate xs = foldl(++) "" xs
-- Problem 6
concatenateAndUpcaseOddLengthStrings :: [String] -> String
concatenateAndUpcaseOddLengthStrings = undefined
if you need anymore information that this let me know
Explanation / Answer
CODE:
module Main where
import Data.Char -- for toUpper
concatenateAndUpcaseOddLengthStrings :: [String] -> String
concatenateAndUpcaseOddLengthStrings [] = ""
concatenateAndUpcaseOddLengthStrings xs = map toUpper (concatenate ([y | y<-xs, odd (length y)])
Related Questions
drjack9650@gmail.com
Navigate
Integrity-first tutoring: explanations and feedback only — we do not complete graded work. Learn more.