Advertisement
Guest User

2Nov2015 ejercicio4

a guest
Jun 22nd, 2018
87
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. {- Ejercicio 4
  2.     Libreria generica
  3.     -}
  4.     data Tipo = Musica | Libros deriving Show
  5.     data Producto = Prod Tipo Float
  6.  
  7.     class Libreria a where
  8.         damePB :: a -> Float
  9.         dameIVA :: a -> Float
  10.         dameTasa :: a -> Float
  11.    
  12.     instance Eq Tipo where
  13.         t1 == t2 = (show t1) == (show t2)
  14.    
  15.     instance Eq Producto where
  16.         (Prod t1 x1) == (Prod t2 x2) = (x1 == x2) && (t1 == t2)
  17.  
  18.     instance Libreria Producto where
  19.         damePB (Prod _ x) = x
  20.         dameIVA (Prod Musica x) = 0.21
  21.         dameIVA (Prod Libros x) = 0.15
  22.         dameTasa (Prod a x) = x * dameIVA (Prod a x)
  23.  
  24.     pvp :: Producto -> Float
  25.     pvp (Prod a x) = x + dameTasa (Prod a x)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement