Projektmunka (6 pont)

Írjatok egy tetszőleges Python programot!
A program helyességét, összetettségét és a megfelelő dokumentációját fogjuk osztályozni!
Hogy ne legyetek teljesen elveszve adunk néhány ötletet:
A megadott témák nehézségükben és összetettségükben is eltérőek, de pontozásuk attól is függ, hogy a megoldáshoz használt módszerek mennyire összetettek. Természetesen lehet a megadott ötletek közül is választani, de lehet sajátot is kitalálni. Ha nem vagytok biztosak az ötletetekben, akkor nyugodtan kérdezzetek rá a gyakorlatvezetőtöknél. A félév során már találkoztatok két komplexebb, összetettebb házival, mint például a sakkozós, szótáras feladatok, így aztán nagyjából érezhetitek, hogy mennyire összetett programot kell ahhoz elkészítenetek, hogy maximális pontot kapjatok. Biztosíthatunk titeket arról, hogy a becsületesen elkészített házi feladatokat maximális jóindulattal fogjuk pontozni.
A projektek kidolgozásánál figyeljetek a következő szempontokra:
  1. A projekteket egy darab .py fájlban kérjük beadni. (Ettől persze eltérhetünk abban az esetben, ha például valamilyen fájlt beolvas a program, mint a szótáras háziban, akkor azt is küldjétek be.)
  2. A fájl elején foglaljátok össze kommentben, hogy milyen témával fogtok foglalkozni, mit fogtok megvalósítani.
  3. Ügyeljetek a megfelelő dokumentációra, azaz példaul ha bonyolultabb függvényt írtok, akkor kommentáljátok, hogy mit csinál, mit csinálnak egyes részei, és úgy általában véve írjátok oda, hogy éppen mit oldotok meg egy adott fügvénnyel stb.
  4. Bármilyen segédeszközt használhattok, de ha különböző forrásokból, például stackexchange-ről másoltok be hosszabb kódot, akkor linkeljétek is be a forrást, és azt a kódot is dokumentáljátok, hogy számot adjatok arról, hogy nemcsak bemásoltátok a kódot, hanem meg is értettétek, hogy az mit csinál.
  5. Próbáljátok is ki példákon keresztül.