Két, független komponensből állnak.
(1.2, 2.3) :: (Double, Double)
(1, 'a') :: (Int, Char)
Kapcsolódó műveletek:
fst :: (a, b) -> a
snd :: (a, b) -> b
fst (1.2, 2.3) → 1.2
snd (1, 'a') → 'a'
Tekintsük az (a,b) rendezett párt mint egy pontot a koordinátarendszerben. Számítsd ki két pont távolságát.
distance :: (Double, Double) ->
(Double, Double)
-> Double
Példa:
distance (2,-5) (5,-1) ↦ 5.0
A függvényt a beadandókezelő rendszerbe töltsd föl.
Állítsd elő azt a listát, ahol az n
-edik természetes szám n
-szer szerepel:
g123 :: Integer -> [Integer]
Eredménye:
[1,2,2,3,3,3,4,4,4,4, ... n,n,...n]
Elem duplikálása: képezz egy listából egy másik listát oly módon, hogy az eredeti lista minden elemét kétszer vesszük!
Típus:
dup :: [a] -> [a]
Példa:
[] ↦ []
[1,7] ↦ [1,1,7,7]
"abc" ↦ "aabbcc"
Képezz n
hosszúságú, tetszőleges típusú elemből álló listát!
replicate :: Integer -> a -> [a]
Ez a név is be van már vezetve:
import Prelude hiding (replicate)
Állítsd elő a következő, n
elemű listát:
[(1,'a'), (2,'b'),...]
Típus:
generatePairs :: Integer -> [(Integer, Char)]
Valósítsd meg az fst
és a snd
függvényt, amelyek visszaadják egy rendezett pár első, illetve második elemét!
fst :: (a, b) -> a
snd :: (a, b) -> b
Ezek szintén előre definiáltak:
import Prelude hiding (fst, snd)
Tekintsük az (a,b)
rendezett párt mint egy pontot a koordinátarendszerben. Tükrözd a pontot
x
tengelyremirrorX :: (Int, Int) -> (Int, Int)
mirrorO :: (Int, Int) -> (Int, Int)
mirror :: (Int, Int) -> (Int, Int) -> (Int, Int)
Definiáld az univerzális kvantort.
all :: (a -> Bool) -> [a]{-véges-} -> Bool
any :: (a -> Bool) -> [a]{-véges-} -> Bool
Ezek szintén előre definiáltak:
import Prelude hiding (all, any)
Sorold fel a tökéletes számokat.
perfectNumbers :: [Integer]
Az első néhány tökéletes szám:
[6,28,496, ...]
A p
és q
prímek ikerprímek, ha q - p == 2
. Sorold fel az ikerprímeket. Sorold fel az ikerprímeket.
twinPrimes :: [(Int, Int)]
Ellenőrizd minden x, y számra n és m között:
x `mod` y == x `rem` y
A függvény típusa az alábbi legyen:
check :: Integer -> Integer -> Bool