Skip to content

Instantly share code, notes, and snippets.

@vojto
Created March 6, 2012 15:54
Show Gist options
  • Select an option

  • Save vojto/1987006 to your computer and use it in GitHub Desktop.

Select an option

Save vojto/1987006 to your computer and use it in GitHub Desktop.
mensie xs = [x | x <- xs, x < 10]
quicksort (x:xs) = quicksort [y | y <- xs, y <= x] ++ [x] ++
quicksort [y | y <- xs, y > x]
quicksort _ = []
-- # Praca so zoznamom
-- foldl - injecct
-- foldl (+) 0 [1, 2, 3]
-- take, drop, zip
dni = ["Ne", "Po", "Ut", "Str", "Stv", "Pi", "So"]
prestupny r | r `mod` 100 == 0 = r `mod` 400 == 0
| otherwise = r `mod` 4 == 0
dlzkyMes r = [31, feb, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31]
where feb | prestupny r = 29
| otherwise = 28
-- Zistenie dna, kedy je 11.r. Den je indexovany od hodnoty 0
jan r = (r + minulyRok `div` 4 - minulyRok `div` 100 + minulyRok `div` 400) `mod` 7
where minulyRok = r -1
-- Zistenie dni zaciatkov mesiacov v danom roku
zaciatkyMesiacov rok = map denPreIndex (scanl (+) 0 (dlzkyMes rok))
where denPreIndex index = (jan rok + index) `mod` 7
-- Helper
denPreIndex index = dni !! index
-- Ziskanie dni v textovej forme
tlacDni rok = map denPreIndex (zaciatkyMesiacov rok)
-- Zistenie dna pre konkretny datum
den dn mesiac rok = (((zaciatkyMesiacov rok) !! (mesiac-1)) + (dn-1)) `mod` 7
tlacDen dn mesiac rok = denPreIndex (den dn mesiac rok)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment