Professional Documents
Culture Documents
Haskell
Haskell
inc5 :: [Int]->[Int]
inc5 = map (+5)(lista)
--Normalni oblik
-- Počnemo s izrazom λk.k*k+1)((λm.m+1)2).
-- Prvo primijenimo izraz λm.m+1 na broj 2. To možemo učiniti zamjenom m sa 2
unutar izraza λm.m+1:
-- (λk.k*k+1)(2+1)
-- Sada imamo izraz 2+1 unutar izraza λk.k*k+1. To možemo izračunati:
-- (λk.k*k+1)3
-- Sada imamo 3 unutar izraza λk.k*k+1. Zamjenjujemo k sa 3:
-- 3*3+1
-- Izračunavamo izraz 3*3+1:
-- 9+1
-- Konačno, izračunavamo 9+1:
-- 10
main :: IO ()
main = do
let niz = [10..30] -- Definišemo listu brojeva od 10 do 30
let oduzmiPet = subtract5 niz -- Oduzimamo 5 od svakog elementa
let dodajPet = inc5 niz -- Dodajemo 5 svakom elementu
let trostruki = replicateTriple niz -- Trostruko ponavljamo svaki element
let daLiSuIsti = sviIsti niz niz niz -- Proveravamo da li su sve liste iste
let izracunato = map izracunaj niz -- Računamo koristeći funkciju izracunaj
let zbir = izracunajZbir 10 30 -- Računamo zbir brojeva od 10 do 30
let repliciranoUTrojkama = replicirajUNizTrojki niz -- Trostruko repliciramo
brojeve
let saberidrugicet = saberiDrugiCetvrti 2 1 5
-- Ispisujemo rezultate ili vršimo druge radnje prema potrebi
print oduzmiPet
print dodajPet
print trostruki
print daLiSuIsti
print izracunato
print zbir
print repliciranoUTrojkama