Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- {-
- 5.5) Crie o tipo Paridade com os values constructors Par e
- Impar . Crie o typeclass ParImpar que contém a função decide
- :: a -> Paridade e possui as instâncias:
- Para Int : noção de Par/Impar de Int .
- Para [a] : uma lista de elementos qualquer é Par se
- o número de elementos o for.
- Bool : False como Par , True como Impar .
- -}
- data Paridade = Par | Impar deriving (Show)
- class ParImpar a where
- decide :: a -> Paridade
- instance (Integral a) => ParImpar a where
- decide i
- |even i == True = Par
- |otherwise = Impar
- instance ParImpar [a] where
- decide a
- | mod (length a) 2 == 0 = Par
- | otherwise = Impar
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement