-- funkcija se definise navodjenjem -- imena liste arg. i telom f-je -- nakon znaka '=' ink x = x + 1 -- Lista mora da bude sacinjena od istog tipa -- elemenata -- Ovako nesto nije dozvoljeno -- ["Rec 1", "Rec 2",["R", "fds"]] -- standardna f-ja za sabiranje dva broja -- sistem primene je "Unesem dva arg." i ona mi -- izbaci zbir -- ako ne navedemo potpis funkcije, onda ce -- sam haskel da predvidi tipove sab1 x y = x+y -- Koncept karijevih funkcija koji omogucava parcijalnu -- primenu argumenata sab2 :: Int -> (Int -> Int) sab2 x y = x+y --Main> :type (sab2 5) --sab2 5 :: Int -> Int obrisizagrade :: [[a]]->[a] obrisizagrade [] = [] obrisizagrade (h:t) = h ++ (obrisizagrade t) obrisizagrade2 :: [[a]] -> [a] obrisizagrade2 l = [x | xs <- l, x<-xs ] prosti :: Int->[Int] prosti n = [x | x<-[2..n], length [y | y<-[1..x], x `mod` y == 0] == 2] --pitagorine :: Int -> [(Int,Int,Float)] --pitagorine n = [(x,y,round(temp)) | x<-[1..n], y<-[1..n], -- round(temp)==temp, temp<=n] -- where -- temp = sqrt(x^2+y^2)