1) Я пытаюсь написать функцию, которая вычисляет среднее из трех чисел я написал что-то вроденаписание средней функции в Haskell
average :: (Float,Float,Float) -> Float
average x y z = (x+y+z)/3
, но он не будет работать по какой-то причине
может кто-то подскажите мне, как написать функцию, которая принимает 3 числа и вычисляет их среднее значение?
2) Я получил эту среднюю функцию из учебника, но когда я попытался запустить его
average :: [Int] -> Rational
average [] = error "empty list"
average xs = toRational (sum xs)/toRational(length xs)
, например, если я вошел в среднем [1..5] в компиляторе выход стал 3% 1, он не печатает среднее значение.
Первая функция должна быть 'средняя (х, у, г) = ..' или' средняя :: Поплавок -> Поплавок -> Поплавок -> Float'. Вторая функция работает. Среднее значение «[1..5]» на самом деле равно 3. Рациональное число 3 печатается как «3% 1» (или 3 более 1) в Haskell. – user2407038
@ user2407038 Это ответ, а не комментарий. – chepner