Informatika2-2021/Sz¼tGyak08
A MathWikiből
(Változatok közti eltérés)
15. sor: | 15. sor: | ||
Definiáljuk az '''Ellipse''' osztály '''equation''' metódusát, ami kiírja az adott ellipszis egyenletét! | Definiáljuk az '''Ellipse''' osztály '''equation''' metódusát, ami kiírja az adott ellipszis egyenletét! | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
=Reservation= | =Reservation= |
A lap 2021. március 31., 12:27-kori változata
Tartalomjegyzék |
Öröklődés
Alakzatok
Írjunk egy Shape osztályt.
- Legyen x és y változója, ezek tárolják az alakzat pozícióját a síkon.
- Legyen egy move metódusa, aminek egyetlen v paramétere van, egy kételemű lista, a vektor, amivel el kell mozgatni az alakzatot.
Definiáljuk a Shape osztály leszármazottaiként az
- Ellipse ellipszis, legyen meg a kis- és nagytengelye (a,b)
- Rectangle téglalap, legyen meg az oldalak hossza (a,b)
osztályokat. Mindkét esetben a pozíciójuk a súlypontjukat jelentse.
Írjunk mindkét osztályhoz egy area függvényt, ami kiszámítja az alakzat területét!
Definiáljuk az Ellipse osztály equation metódusát, ami kiírja az adott ellipszis egyenletét!
Reservation
A következő feladatokban egy olyan rendszeren dolgozunk, ami egy moziban fogja nyomon követni a különböző emberek helyfoglalásait. Ehhez létre fogunk hozni egy Reservation
nevű osztályt, ami egy ember foglalását tárolja, és ezt az osztály ellátjuk minden szükséges metódussal a kényelmes használathoz.
Reservation_1
Ebben a feladatban hozzuk létre a konstruktort. A foglalás osztály két tagváltozót tartalmazzon majd, és ezek legyenek a konstruktor paraméterei is, ebben a sorrendben:- name, a mozi foglalás lefoglalójának neve
- seats, egy lista, ami az üléseket tartalmazza amiket name lefoglalt. Minden ülés egy karakterlánccal van leírva, pl. "E12"
Segítség
- Ne felejtsük el, hogy (mint minden metódusnál) a konstruktor definiálásakor az első paraméter a self legyen.
Reservation_2
Ebben a feladatban adjunk egy metódust a Reservation osztályhoz. A metódus neve legyen not_taken, és egy paramétere legyen (a self-en kívül):- lehetosegek, ami egy lista, ami lehetséges üléseket tartalmaz.
Segítség
- Ne felejtsük el, hogy az aktuális objektum foglalt helyeit a self referencia seats tagváltozóján keresztül érhetjük el.
Reservation_3
Ebben a feladatban kipróbáljuk, milyen használni az eddig megalkotott Reservation osztályt. Írjuk meg a reservation_3 nevű függvényt, aminek paraméterei:- foglalasok, egy lista, ami az éppen aktuális foglalásokat tartalmazza, Reservation típusú objektumok formájában
- osszes_ules, egy lista, az adott mozi terem összes ülését tartalmazza
Segítség
- Használjuk a Reservation osztály not_taken nevű metódusát.
Reservation_4
Ebben a feladatban olyan metódust írunk, ami módosítja az objektum tartalmát. Az eddigi Reservation osztályunkban hozzunk létre egy új metódust, aminek a neve change, és paramétere (a self-en kívül):- uj_helyek, egy lista, ami azt tartalmazza hogy mik a helyek amiket foglalni akar az illető a változtatás után.
Reservation_5
Most használjuk a Reservation objektumainkat kicsit bonyolultabb feladatra. Írjuk meg a reservation_5 nevű függvényt, aminek paraméterei:- foglalasok, egy lista, ami az éppen aktuális foglalásokat tartalmazza, Reservation típusú objektumok formájában
- osszes_ules, egy lista, az adott mozi terem összes ülését tartalmazza
- nev, egy karakterlánc, az éppen foglalni próbáló vendég neve
- darab, egy egész szám, hogy hány helyet szeretne lefoglalni
Segítség
- Használjuk ez előző feladatok megoldását