1)我想写函数计算三个数字 平均我写了类似写平均函数在Haskell
average :: (Float,Float,Float) -> Float
average x y z = (x+y+z)/3
但它不会因为某种原因
能工作的人指导我如何编写一个需要3个数字并计算其平均值的函数?
2)我从教科书这个平均函数但是当我试图例如,如果我进入在编译器中平均[1..5]来运行它
average :: [Int] -> Rational
average [] = error "empty list"
average xs = toRational (sum xs)/toRational(length xs)
输出成为 3% 1,它不打印数值的平均值。
第一功能应该是'平均(X,Y,Z)= ..'或'平均::浮法 - >浮动 - >浮 - > Float'。第二个函数确实有效......'[1..5]'的平均值实际上是3.有理数3在Haskell中被打印为“3%1”(或3以上)。 – user2407038
@ user2407038这是一个答案,而不是评论。 – chepner