Szerkesztés alatt!
Az oldal további része szerkesztés alatt áll, a tartalma minden további értesítés nélkül többször, gyakran, jelentősen megváltozhat!
Gyakorlás¶
Tartalom
Gyakorló feladatok a félév teljes anyagából.
A gyakorlat anyaga¶
Ezen a gyakorlaton nincs új tananyag, cserében gyakorló feladatokkal mélyítheted eddig megszerzett tudásod. A gyakorlatvezetők a gyakorlat teljes ideje alatt rendelkezésre állnak és válaszolnak a feladatokkal kapcsolatos kérdéseidre.
Feladatok¶
Adattípusok használata¶
1. feladat
Hozz létre egy függvényt szamjegyek() néven, melynek egy paramétere van, ami egy szám (lehet tizedestört alakban is.)
Írd ki, hogy hány féle számjegy van a számban!
Példamegoldás
1 2 3 4 | |
2. feladat
Hozz létre egy függvényt hianyzo_szamjegyek() néven, melynek egy paramétere van, ami egy szám (lehet tizedestört alakban is.)
Írd ki, hogy mely számjegyek nem szerepelnek a számban! Egy sorban egy számjegy szerepeljen!
Tipp: szamjegyek = set('0123456789')
Példamegoldás
1 2 3 4 5 6 | |
3. feladat - Egyedi szavak szövegben
Írj egy függvényt egyedi_szavak() néven, amely egy szöveget kap paraméterként, és visszaadja, hány különböző szó van benne.
A kis- és nagybetűket ne különböztesse meg, és ha egy szóban nem betű karakterek szerepelnek (kötőjel, szám, írásjel, stb.), azokat egyszerűen hagyja ki a szóból.
(Az "1kutya?", "ku-tya,", "kut#ya." például mind egyenértékű a "kutya" szóval.)
Példa:
1 2 3 | |
Tipp: Használd a lower() és a split() függvényeket!
Példamegoldás
1 2 3 4 5 6 7 8 9 10 11 12 | |
Példamegoldás
1 2 3 4 5 6 | |
4. feladat - Szótár készítése listából
Írj egy függvényt lista_szotarra() néven, amely két egyforma hosszúságú listát vár paraméterként, és visszaad egy szótárt, ahol az első lista elemei sorrendben a kulcsok, a második lista elemei pedig sorrendben az értékek.
Példa:
1 2 3 4 | |
Példamegoldás
1 2 3 4 5 | |
5. feladat - Leggyakoribb elem
Írj egy függvényt leggyakoribb() néven, amely egy listát vár paraméterként, és visszaadja a leggyakrabban előforduló elemet.
Ha többnek is ugyanannyi az előfordulása, az egyiket adja vissza.
Példa:
1 2 3 | |
Példamegoldás
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | |
6. feladat - Átlagok számítása szótárból
Írj egy függvényt atlag_szamitas() néven, amely egy szótárt vár, ahol a kulcsok a diákok nevei, az értékek pedig jegyek listái.
A függvény adjon vissza egy új szótárt, ahol minden diákhoz az átlaga tartozik!
Példa:
1 2 3 4 5 6 7 | |
Példamegoldás
1 2 3 4 5 6 | |
Rekurzió¶
7. feladat - Rekurzív hatvány
Írj egy rekurzív függvényt hatvany(alap, kitevo) néven, amely kiszámolja az alap kitevo-edik hatványát!
Példa:
1 2 | |
Példamegoldás
Alapeset: ha a kitevő 0, az eredmény 1.
Rekurzív eset: alap * hatvany(alap, kitevo - 1)
1 2 3 4 | |
8. feladat - Számjegyek összege rekurzióval
Írj egy rekurzív függvényt szamjegyek_osszege(n) néven, amely visszaadja egy pozitív egész szám számjegyeinek összegét!
Példa:
1 2 | |
Tipp: Az utolsó számjegy: n % 10, a maradék: n // 10
Példamegoldás
1 2 3 4 | |
Fájlkezelés¶
9. feladat - Fájlból nevek beolvasása
Írj egy függvényt nevek_beolvasasa(fajlnev) néven, amely beolvas egy fájlt, amelyben soronként nevek szerepelnek.
A függvény adjon vissza egy listát a nevekkel (sortörések nélkül)!
Teszteld úgy, hogy létrehozol egy nevek.txt fájlt az alábbi tartalommal:
1 2 3 4 | |
Példamegoldás
1 2 3 4 5 6 7 | |
10. feladat - Számok írása fájlba
Írj egy függvényt szamok_irasa(fajlnev, szamok) néven, amely egy számokat tartalmazó listát fájlba ír, soronként egy számot!
Példa:
1 2 | |
A szamok.txt fájl tartalma:
1 2 3 4 5 | |
Példamegoldás
1 2 3 4 | |
Hajrá! (Mindent bele!)¶
11. feladat - Szótár mentése fájlba
Írj egy függvényt szotar_mentese(fajlnev, szotar) néven, amely egy szótárt ment fájlba kulcs:érték formátumban, soronként egy bejegyzés!
Példa:
1 2 | |
A diakok.txt fájl tartalma:
1 2 3 | |
Példamegoldás
1 2 3 4 | |
12. feladat - Szótár beolvasása fájlból
Írj egy függvényt szotar_beolvasasa(fajlnev) néven, amely beolvas egy fájlt, amelyben kulcs:érték formátumú sorok vannak, és visszaad egy szótárt!
Teszteld az előző feladatban létrehozott diakok.txt fájllal!
Példamegoldás
1 2 3 4 5 6 7 8 9 | |
14. feladat - Legnagyobb pontszám fájlból
Írj egy függvényt legnagyobb_pontszam(fajlnev) néven, amely beolvas egy fájlt, amelyben név:pontszám formátumú sorok vannak, és visszaadja a legnagyobb pontszámot elért diák nevét!
Példa: Adott a diakok.txt fájl tartalma:
1 2 3 | |
1 | |
Példamegoldás
1 2 3 4 5 6 7 8 9 10 11 | |
15. feladat - Összetett feladat: Telefonkönyv
Készíts egy egyszerű telefonkönyv programot, amely:
- Beolvas egy
telefonkonyv.txtfájlt, amelybennév:telefonszámformátumú sorok vannak. - Egy szótárban tárolja az adatokat.
- A felhasználótól bekér egy nevet.
- Kiírja a hozzá tartozó telefonszámot, vagy jelzi, ha nincs ilyen név.
Példa fájl tartalom:
1 2 3 | |
Példamegoldás
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 | |