我需要做一个练习,但是我很迷茫...我需要用多项式实现 Ord 实例。这是我的尝试:
data Pol = P [(Float,Int)] deriving Show
instance Ord Pol where
(Pol a) > (Pol b) = (maxGrado a) > (maxGrado b) || ((maxGrado a) == (maxGrado b) && (maxCoe a) > (maxCoe b))
(Pol a) < (Pol b) = (maxGrado a) < (maxGrado b) || ((maxGrado a) == (maxGrado b) && (maxCoe a) < (maxCoe b))
maxGrado :: [(Float,Int)] -> Int
maxGrado [] = 0
maxGrado ((c,g):xs) = g
maxCoe :: [(Float,Int)] -> Int
maxCoe [] = 0
maxcoe ((c,g):xs) = c
--错误:
ERROR file:.\Febrero 2011.hs:32 - Undefined data constructor "Pol"
错误非常愚蠢,但我已经花了一个小时来解决它...有人可以帮助我吗?非常感谢!