9 Jun
2007
9 Jun
'07
8:12 p.m.
On Sat, Jun 09, 2007 at 12:22:02PM -0700, AVG wrote:
What's wrong??
greatest common divisor
code:
mdc :: Int-> Int -> Int mdc _ 1 = 1 mdc 1 _ = 1 mdc x y |x > y = mdc (x-y) y |y > x = mdc (y-x) x |x==y = x
Since the three lines starting with | are a continuation of the preceding line, they must be indented more.
mdcl :: [Int]-> [Int] mdcl []=[] mdcl l = mdcl ([mdc (tira(take 1 l)) (tira(take 1 (drop 1 l)))]++ drop 2 l)
gcdl :: [Int] -> Int gcdl l = tira l
tira :: [Int] -> Int tira []=0 tira [x]=x
Spelling out names like 'mdcl' and 'tira' will make it easier for us to help you. gcd isn't a problem because it is well established mathematical notation, but the others are opaque to me. Stefan