Informatika2-2016/Gyakorlat8

A MathWikiből
(Változatok közti eltérés)
(Alakzat)
(Alakzat)
11. sor: 11. sor:
  
 
Definiáljuk a '''Shape''' osztály leszármazottaiként az  
 
Definiáljuk a '''Shape''' osztály leszármazottaiként az  
* '''Ellipse''' ellipszis és
+
* '''Ellipse''' ellipszis, legyen meg a kis- és nagytengelye ('''a,b''')
* '''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!
+
* '''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!
 
Definiáljuk az '''Ellipse''' osztály '''equation''' metódusát, ami kiírja az adott ellipszis egyenletét!

A lap 2016. április 6., 16:15-kori változata

Tartalomjegyzék

Előadás

8. 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, 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!

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.

Személyes eszközök