Logo‎ > ‎Feladatok‎ > ‎Funkcionális programozás‎ > ‎

Vegyes feladatok listák használatára

  1. Készítsünk mozaiknevet generáló függvényt!

    Példa: mozaiknév [Magyar Tudományos Akadémia]
    Eredménye: "MTA

  2. Írjunk pénzt címletező függvényt!

    A forgalomban levő címletek névértéke: 20000 10000 5000 2000 1000 500 200 100 50 20 10 5
    Átváltáskor adjuk meg a címlet névértékét és szükséges számát!

    Példa: pénztár 96750
    Eredménye: [[20000 4] [10000 1] [5000 1] [1000 1] [500 1] [200 1] [50 1]]

    eljárás pénztár :pénz
     eredmény vált :pénz címlet []
    vége

    eljárás vált :pénz :l :s
     ha vagy (:pénz = 0) (üres? :l) [eredmény :s]
     ha (egészhányados :pénz első :l) <> 0
      [eredmény vált (maradék :pénz első :l) (en :l)
          (utolsónak lista (első :l) (egészhányados :pénz első :l) :s)]
     eredmény vált :pénz en :l :s
    vége

    eljárás címlet
     eredmény [20000 10000 5000 2000 1000 500 200 100 50 20 10 5]
    vége

  3. Egy számokból álló lista elemeit adjuk össze hármasával!

    Példa: hármasössz [1 2 3 4 5 6 7 8 ]
    Eredménye: [6 15 15]

  4. Állítsuk elő egy listába a 2 hatványait!

    Példa: 2hatvány 6
    Eredménye: [1 2 4 8 16 32 64]

  5. Készítsünk számtani sorozatot előállító függvényt! A függvény paraméterei: a kezdőérték, a különbség és a darabszám.

    Példa: számtani 2 3 4
    Eredménye: [2 5 8 11]

  6. Állítsuk elő egy pozitív egész szám valódi osztóit!

    Példa: valódiosztói 12
    Eredménye: [2 3 4 6]

  7. Állítsunk elő azonos elemekből álló listát!

    Példa: sorgen "lali 5
    Eredménye: [lali lali lali lali lali]

  8. Állítsunk elő két elem váltogatásával adott hosszúságú listát!

    Példa: váltakozva "< "> 7
    Eredménye: [> < > < > < >]

  9. Készítsünk fokozatosan eggyel növekvő számú csillagokból álló sorozatot!

    Példa: csillagok 5
    Eredménye: [* [* *] [* * *] [* * * *] [* * * * *]]

  10. Egy lista elemeit kétszerezzük meg függvény segítségével!

    Példa: kétszer [1 2 3]
    Eredménye: [1 1 2 2 3 3]

  11. Írjunk függvényt, ami egy n magas számhegyet hoz létre!

    Példa: számhegy 5
    Eredménye: [1 2 3 4 5 4 3 2 1]

  12. Írjunk függvényt, ami egy n magas számhegységet hoz létre!

    Példa: számhegység 5
    Eredménye: [1 2 3 4 5 4 3 2 1 2 3 4 3 2 1 2 3 2 1 2 1]

  13. Írjunk függvényt, ami egy n magas számlépcsőt hoz létre!

    Példa: számlépcső 5
    Eredménye: [1 2 2 3 3 3 4 4 4 4 5 5 5 5 5]

  14. Készítsünk függvényt, amely a listaelemek ismétlődését elnyomja!

    Példa: kihagy [1 2 2 3 3 3 4 4 4 4 5 5 5 5 5]
    Eredménye: [1 2 3 4 5]

  15. Készítsünk függvényt, amely a listában szereplő elemeket határozza meg ismétlődés nélkül!

    Példa: ismétlődők "narancs
    Eredménye: "na

  16. Adjuk meg egy összetett sorozat elemszámát!

    Példa: sorelemszám [Árpád [Zolta [Taksony [Géza [István] Mihály]]]]
    Eredménye: 6

  17. Írjunk függvényt, amelynek a paramétere egy következő alakú sorozat: [[Soma lencse spenót][Mira bab sóska sárgaborsó]], ami azt tárolja, hogy ki milyen főzeléket szeret.Készítsünk függvényt, amely eredményül adja, hogy ki szereti a legtöbb főzeléket.

    Példa: főzelék [[Soma lencse spenót][Mira bab sóska sárgaborsó]]
    Eredmény: Mira

  18. Készítsünk függvényt, amely a listában szereplő szavak hangrendjét adja vissza egy másik listában!

    Példa: hangrend [káposzta rebarbara padlizsán]
    Eredmény: [mély vegyes vegyes]

  19. Határozzuk meg egy pozitív egész szám két tagú összegre bontásának összes számpárját! A tagok nem negatív egész számok lehetnek.

    Példa: párok 5
    Eredmény: [[5 0] [4 1] [3 2] [2 3] [1 4] [0 5]]

  20. Készítsük el egy tetszőlegesen begépelt TAJ szám kilencedik számjegyének ellenőrzését!

    A személyi adatok nyilvántartásához többféle számot használnak. Ezek közé tartozik a társadalombiztosítási azonosító jel, röviden TAJ szám. Használatát és képzési szabályát törvény írja elő:

    „A TAJ szám egy kilenc számjegyből álló szám, amelyben az első nyolc számjegy egy folyamatosan kiadott egyszerű sorszám, amely mindig az előző, utoljára kiadott sorszámból egy hozzáadásával keletkezik. A kilencedik számjegy ellenőrző un. CDV kód, melynek képzési algoritmusa az alábbi: A TAJ szám első nyolc számjegyéből a páratlan helyen állókat hárommal, a páros helyen állókat héttel szorozzuk, és a szorzatokat összeadjuk. Az összeget tízzel elosztva a maradékot tekintjük a kilencedik, azaz CDV kódnak.”

    A kilencedik számjegy, az úgynevezett ellenőrzőszámjegy a véletlen gépelési hibák azonnali jelzésére szolgál. (A CDV a „Checking Decimal Verify” kifejezés rövidítése.)

    Példa:
    cdv 023158300 Eredmény: "Jó!
    cdv 023158301 Eredmény: "Rossz!