Guest User

Untitled

a guest
Aug 5th, 2018
85
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. -- Tehtävä 9: Tyypillä [(a,Int)] voidaan laskea alkioitten
  2. -- esiintymiskertoja. Esimerkiksi [(True,1),(False,3)] tarkoittaa että
  3. -- True on esiintynyt kerran ja False kolme kertaa. Toteuta
  4. -- State-monadin operaatio count, joka rekisteröi yhden
  5. -- esiintymiskerran annetulle alkiolle.
  6. --
  7. -- Esimerkkejä:
  8. --  runState (count True) []
  9. --    ==> ((),[(True,1)])
  10. --  runState (count 7) []
  11. --    ==> ((),[(7,1)])
  12. --  runState (count 3) [(3,1),(2,3)]
  13. --    ==> ((),[(3,2),(2,3)])
  14. --
  15. -- PS. Tilalistan järjestyksellä ei ole väliä. Testit järjestävät
  16. -- listan ennen vertailua.
  17.  
  18. count :: Eq a => a -> State [(a,Int)] ()
  19. count x = undefined
Add Comment
Please, Sign In to add comment