False
és True
felváltvaMatematikai példakép: { n2 | n ∈ N, n páros }
Haskellben:
A generátorokkal bevezetett új változók csak a generátortól jobbra láthatóak (és a |
előtt).
Tehát ez hibás:
Állítsuk elő a 2 hatványait növekvő sorrendben 1-től 210-ig!
Soroljuk fel az első 10 négyzetszám kétszeresét!
False
és True
felváltvaÁllítsunk elő olyan 10 hosszúságú listát, amely váltakozva tartalmazza a False
és True
értékeket!
Melyik legkisebb 2 hatvány nagyobb, mint 1020?
Megjegyzés: l !! 0 == head l
.
Melyik legkisebb n természetes számra igaz: 1024n > 2 * 1000n?
Soroljuk fel a 60 osztóit!
Hány osztója van a 60-nak?
Prímszám-e az 123457?
A rendezett párok elemei lehetnek különböző típusúak:
Halmazkifejezés, amely párokat tartalmazó listát állít elő:
Állítsuk elő azt a listát, amely sorrendben tartalmazza az összes (óra, perc) párt!
Állítsuk elő azt a listát, amely párként tartalmazza az összes dominót: [(0,0),(0,1),...,(0,9),(1,1),...,(9,9)]
!
A (1,0)
ne szerepeljen, mert az ugyanazt a dominót reprezentálja, mint a (0,1)
.
Megjegyzés: A dominók legkevesebb nulla, legtöbb kilenc pontot tartalmazhatnak.
Keressünk olyan a, b, c logikai értékeket, melyekre teljesül a következő logikai feltétel:
(a || (b && c)) /= ((a || b) && c)
Állítsuk elő azt a listát, amely sorrendben tartalmazza az összes (hónap, nap) párt egy 365 napos évben!
Segítség: Használjuk az elem
függvényt!
Két listát az zip
függvénnyel cipzározhatunk össze:
Megjegyzés: Ha valamelyik lista elfogy, a cipzározás véget ér.
Állítsuk elő az [(1,'a'),(2,'b'),
…(
…,'z')]
listát!
Végtelen listák megnézésekor használjuk a take
függvényt:
Mi a különbség?
Mi lesz ez?
Soroljuk fel a természetes számpárokat: [(0,0),(0,1),(1,0),(0,2),(1,1),(2,0),
…]
!
Állítsuk elő a következő listát: [1,2,2,3,3,3,4,4,4,4,
…]
! Az i szám i-szer szerepel a listában.
Próbáljuk ki a concat
függvényt!
Állítsuk elő az 1,2,1,2,3,2,1,2,3,4,3,2,1,2,3,4,5,4,3,2,1,2,3,4,5,6,5,4,3,2,1,.. sorozatot!
Próbáljuk ki az unwords
függvényt!
Állítsuk elő a következő végtelen szöveget: "* ** *** **** *****
… !
Állítsuk elő azt a listát, amelyet úgy kapunk, hogy a természetes számokból elhagyjuk a négyzetszámokat!
Állítsuk elő az [1,1,2,1,2,3,1,2,3,4,
…]
listát!
Állítsuk elő a következő sorozatot: 0,1,0,-1,0,1,2,1,0,-1,-2,-1,0,1,2,3,2,1,0,-1, … !
Írjunk olyan kifejezést, amely megadja π közelítő értékét a Leibniz-féle sor részleges előállításával! A képlet a következő:
Természetesen ezt mi csak közelítjük, így elég az első ezer elem összegét venni, majd az eredményt néggyel megszorozni.
Segítség: Először érdemes az [1, -3, 5, -7, 9, -11, ... ]
végtelen listát előállítani. Majd vegyük ezen elemek reciprokát és adjuk ezeket össze!
Tekintsük a következő egyenleteket:
Az egyenletek bal oldalán olyan számtani sorozatok szerepelnek, amelyek összege egyenlő a sorozat első és utolsó elemének szorzatával.
Állítsuk elő az összes ilyen sorozatot, az utolsó elem nagysága szerint növekvő sorrendben!
Az ellenőrzéshez csak az első 6 sorozatot írjuk be.
Segítség: Használhatjuk a List
modulban található init
és tails
függvényeket.