Advertisement
Guest User

Untitled

a guest
Oct 11th, 2018
79
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. areEqual :: Int -> Int -> Int
  2. areEqual x y =
  3.   if x == y then 1
  4.   else 0
  5.  
  6. countRepetitions :: Int -> [Int] -> Int
  7. countRepetitions _ [] = 0
  8. countRepetitions x (y:list) = (areEqual x y) + (countRepetitions x list)
  9.  
  10. auxGetModa :: Int -> [Int] -> Int -> Int
  11. auxGetModa x [] suma = x
  12. auxGetModa x (y:list) suma =
  13.   if  (max ((countRepetitions x list) + (areEqual x y)) suma)  > (countRepetitions y list)  then (auxGetModa x list (max ((countRepetitions x list) + (areEqual x y)) suma))
  14.   else (auxGetModa y list (countRepetitions y list))
  15.  
  16. getModa :: Int -> Int -> Int -> Int -> Int -> Int
  17. getModa a b c d e = (auxGetModa a (a:b:c:d:e:[]) 0)
  18.  
  19. len :: [a] -> Int
  20. len [] = 0
  21. len (x:xs) = 1 + len xs
  22.  
  23. getPow :: Double -> Int -> Double
  24. getPow _ 0 = 1
  25. getPow x n = x * (getPow x (n-1))
  26.  
  27. auxEvaluate :: [Double] -> Double -> Int -> Double
  28. auxEvaluate (y:list) x 0 = y
  29. auxEvaluate (y:list) x n = y * (getPow x n) + (auxEvaluate list x (n-1))
  30.  
  31. evaluate :: [Double] -> Double -> Double
  32. evaluate [] _ = 0.0
  33. evaluate list x = (auxEvaluate list x ((len list)-1))
  34.  
  35. xSort :: [Int] -> [Int]
  36. xSort [] = []
  37. xSort (x:list) = (xSort (filter (<x) list))++[x]++(xSort (filter (>=x) list))
  38.  
  39.  
  40. --data Arbol e = Nodo (Arbol e) e (Arbol e) | ArbolVacio
  41.  
  42. --ABB = (Nodo (Nodo (Nodo ArbolVacio 2 ArbolVacio) 5 (Nodo ArbolVacio 7 ArbolVacio)) 8 (Nodo ArbolVacio 9 (Nodo (Nodo ArbolVacio 11 ArbolVacio) 15 ArbolVacio)))
  43.  
  44.  
  45. --posOrden :: Arbol a -> [a]
  46. --posOrden ArbolVacio = []
  47. --posOrden (Nodo l n r) =
  48. --(podOrden l)++(posOrden r)++[n]
  49.  
  50. main = do
  51. print(getModa 8 1 5 4 3)
  52. print(getModa 4 2 3 2 1)
  53. print(getModa 2 3 3 2 3)
  54. print(evaluate [] 100)
  55. print(evaluate [2,3.1,10,0] 2)
  56. print(evaluate [10,0] 2)
  57. print(evaluate [1,2,3,4,5] 3)
  58. print(xSort [])
  59. print(xSort [1])
  60. print(xSort [1,6,3,10,2,14])
  61. --print(posOrdenABB ABB)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement