Haskell任务-解决方案是什么



我需要一些帮助来解决Haskell中的一个问题。

我想创建一个有三个参数的函数——第一个参数是一个代表算术运算的字符,如'+', '-', '*', '/',接下来的两个参数是数字列表,这个函数应该返回一个数字列表,这样在给定参数的情况下

'-' [3,4,7] [-4,6,6]

它将返回

[7,-2,1]

但我不知道如何开始。

此外,如何计算结果列表的最小元素?

查看函数

zipWith :: (a -> b -> c) -> [a] -> [b] -> [c]

minimum :: Ord a => [a] -> a

你应该能够用这些来构建你想要的功能。

关于:

f opStr x y = zipWith op x y where
    op = case opStr of
        '+' -> (+)
        '-' -> (-)
        '*' -> (*)
        '/' -> (/)

或者更短,您可以将第一行替换为;

f opStr = zipWith op where

相关内容

最新更新