Haskell Heron области без где, пусть

Я хочу реализовать область треугольника Герона в haskell. Я не могу использовать куда и впустить...

введите здесь описание изображения

вот мой код:

triangleArea :: (Double, Double, Double) -> Double
triangleArea (x, y, z) = sqrt (div ((x + y + z)*(x + y - z)*(x - y + z)*(-x + 
y + z)) 4)

Результат моего кода - ошибка:

    • No instance for (Integral Double) arising from a use of ‘div’
    • In the first argument of ‘sqrt’, namely ‘(div ((x + y + z) * (x + y - z) * (x - y + z) * (- x + y + z)) 4)’
      In the expression: sqrt (div ((x + y + z) * (x + y - z) * (x - y + z) * (- x + y + z)) 4)
      In an equation for ‘triangleArea’: triangleArea (x, y, z) = sqrt (div ((x + y + z) * (x + y - z) * (x - y + z) * (- x + y + z)) 4)

Что я делаю не так?


person mackosz    schedule 16.10.2020    source источник
comment
div для целочисленного деления, вместо этого используйте оператор /   -  person Robin Zigmond    schedule 16.10.2020