Informatika2-2016/Gyakorlat8
A MathWikiből
(Változatok közti eltérés)
(→Alakzat) |
(→Alakzat) |
||
6. sor: | 6. sor: | ||
Nyissuk meg a Sypdert. | Nyissuk meg a Sypdert. | ||
== Alakzat == | == Alakzat == | ||
− | Í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. | + | Í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 és '''Rectangle''' téglalap osztályokat. Mindkét esetben a pozíciójuk a súlypontjukat jelentse. Az ellipszisnek legyen meg a kis- és nagytengelye ('''a,b'''), a téglalapnak pedig a két oldal hossza tagváltozóként ('''a,b''')! Írjunk mindkét osztályhoz egy '''area''' függvényt, ami kiszámítja az alakzat területét! | + | Definiáljuk a '''Shape''' osztály leszármazottaiként az |
+ | * '''Ellipse''' ellipszis és | ||
+ | * '''Rectangle''' téglalap osztályokat. Mindkét esetben a pozíciójuk a súlypontjukat jelentse. Az ellipszisnek legyen meg a kis- és nagytengelye ('''a,b'''), a téglalapnak pedig a két oldal hossza tagváltozóként ('''a,b''')! Í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! | Definiáljuk az '''Ellipse''' osztály '''equation''' metódusát, ami kiírja az adott ellipszis egyenletét! |
A lap 2016. április 6., 15:14-kori változata
Tartalomjegyzék |
Előadás
Bevezető feladatok
Nyissuk meg a Sypdert.
Alakzat
Í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 és
- Rectangle téglalap osztályokat. Mindkét esetben a pozíciójuk a súlypontjukat jelentse. Az ellipszisnek legyen meg a kis- és nagytengelye (a,b), a téglalapnak pedig a két oldal hossza tagváltozóként (a,b)! Í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!
Vászon
Definiáljuk a Canvas (vászon) osztályt. Egyetlen tagváltozója legyen a shapes, ami a rajta lévő alakzatokat tárolja. Oldjuk meg, hogy az osztályunk iterálható legyen! Ehhez definiáljuk az __iter__(self) metódust, valamit a next(self) metódust, ahogy az előadáson láttuk.