From 25906af5735980a342fd9a60c98d5cbf899b9f59 Mon Sep 17 00:00:00 2001 From: anon Date: Mon, 22 Jul 2024 19:39:19 +0200 Subject: [PATCH] Added 'Haskell/zh_I.hs' --- Haskell/zh_I.hs | 32 ++++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) create mode 100644 Haskell/zh_I.hs diff --git a/Haskell/zh_I.hs b/Haskell/zh_I.hs new file mode 100644 index 0000000..1d2649a --- /dev/null +++ b/Haskell/zh_I.hs @@ -0,0 +1,32 @@ +-- Kovács Dávid - AGVXOV +-- +-- A. csoport +-- Zárthelyi dolgozat +-- Funkcionális nyelvek + + + +-- 1.) Adjuk meg azt a függvényt, amely első paramétere egy elem és egy bool. +-- Az elemet csak akkor fűzzük a második paraméterként kapott lista elejére, ha a bool igaz. + + +condAddToList :: (a, Bool) -> [a] -> [a] +--condAddToList (x, y) z = if y then x : z else z +condAddToList (x, y) z + | y = x : z + | otherwise = z + + +-- 2.) Adjuk meg azt a függvényt, amely két egész számot kap, és előállítja a köztük értelmezett +-- intervallumot! Abban az esetben, ha az első argumentum nagyobb, mint a második, akkor üres +-- listát adjon vissza! + +interval :: Int -> Int -> [Int] +interval x y = if x > y then [] else [x..y] + +-- 3.)Adjuk meg azt a függvényt, amely egy rendezett párt állít elő egy listából. A pár első eleme a +-- lista első eleme, a pár második eleme pedig a lista farok része legyen. Feltételezhetjük, hogy a +-- lista nem üres. + +headTail :: [a] -> (a, [a]) +headTail (x:xs) = (x, xs)