我写了divisible_by2来对列表中所有偶数且小于二十的元素进行平方。我的第二个函数sum2对divisible_by2的所有元素求和。我需要帮助组合这些函数,以便在运行divisible_by2时编译两个函数。
divisible_by2 = [ x * x| x <- [2,4..18]]
sum2 = foldr (+) 1 divisible_by2
单独运行时,两个函数都会提供正确的输出
*Main> :r
Ok, 1 module loaded.
*Main> divisible_by2
[4,16,36,64,100,144,196,256,324]
*Main> sum2
1141
*Main>
答案 0 :(得分:2)
我猜你只想要:
foo = (divisible_by2, sum2)
此外,您1
中的foldr (+) 1
看起来很奇怪。你可能想要0
,或者想要通过调用foldr
来替换整个sum
表达式。