Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Haskell quadratic equation root

Tags:

haskell

Haskell program which shows the two roots and in the case that the equation has no real roots or has all values as roots should return zero.

functionRoot :: Float -> Float -> Float -> (Float,Float)        
functionRoot a b c = if d < 0 then error "0" else (x, y)
                        where x = e + sqrt d / (2 * a)
                        y = e - sqrt d / (2 * a)
                        d = b * b - 4 * a * c
                        e = - b / (2 * a)

ERROR: file:.\roots.hs:4 - Syntax error in input (unexpected symbol "y") any thought?

like image 824
Eric Wang Avatar asked Feb 22 '23 16:02

Eric Wang


1 Answers

You need to indent definitions under where further.

functionRoot a b c = if d < 0 then error "0" else (x, y)
                        where
                          x = e + sqrt d / (2 * a)
                          y = e - sqrt d / (2 * a)
                          d = b * b - 4 * a * c
                          e = - b / (2 * a)
like image 71
Cat Plus Plus Avatar answered Mar 05 '23 08:03

Cat Plus Plus