fla*_*nka 0 haskell functional-programming
以下算法用于计算二次方程根,但编译它会产生编译错误.我从教程中复制了它.
2 roota.hs:5:20: parse error on input `='
roots (a,b,c) =
if d < 0 then error "sorry" else (x1, x2)
where x1 = e + sqrt d / (2 * a)
x2 = e - sqrt d / (2 * a)
d = b * b - 4 * a * c
e = - b / (2 *a)
Run Code Online (Sandbox Code Playgroud)
谢谢你的回答.
这是缩进的问题.尝试
roots (a,b,c) =
if d < 0 then error "sorry" else (x1, x2)
where
x1 = e + sqrt d / (2 * a)
x2 = e - sqrt d / (2 * a)
d = b * b - 4 * a * c
e = - b / (2 *a)
Run Code Online (Sandbox Code Playgroud)
另请参阅有关缩进的问题以及来自Haskell Wikibook的文章.