Informatika2-2015/Gyakorlat07

A MathWikiből
A lap korábbi változatát látod, amilyen Csirke (vitalap | szerkesztései) 2015. március 23., 11:48-kor történt szerkesztése után volt.
(eltér) ←Régebbi változat | Aktuális változat (eltér) | Újabb változat→ (eltér)

6. gyakorlat - Osztályok definiálása

Ezen a gyakorlaton az előző heti előadás anyagát dolgozzuk fel.

Feladatok

Feladatok a CloudCoder-en megtalálhatóak. Ajánlott sorrend foglalas_1-tól foglalas_6-ig számsorrendben.

Az összes feladat egymásra épül, ugyanazt a Foglalas nevű osztályt fejlesztitek egyre tovább. Ezért amikor kész az egyik feladat, érdemes átmásolni az addigi megoldásotokat a következő feladathoz. De vigyázzatok, az ellenőrző kódot ne másoljátok át, csak a megoldásotokat!

A mostani feladatok mind tartalmaznak a kódvázlatban ellenőrző kódot. Ehhez ne nyúljatok hozzá (a házi feladatnál pl. ha hozzányúltok, az hibásnak számít). Az se fontos, hogy megértsétek ami oda van írva, nem kell elolvasnotok. Ha véletlenül átírnátok, itt az eredeti kódvázlat mindegyik feladathoz:

foglalas_1:

class Foglalas(object):
    pass
 
################################
# Ellenorzo kod, ne modositsuk!
 
def foglalas_1(a, b):
    o = Foglalas(a, b)
    return o.__dict__

foglalas_2:

class Foglalas(object):
    pass
 
################################
# Ellenorzo kod, ne modositsuk!
 
def foglalas_2(a, b):
    return a.nem_foglalt(b)

foglalas_3:

class Foglalas(object):
    pass
 
def szabad(foglalasok, osszes_ules):
    pass
 
################################
# Ellenorzo kod, ne modositsuk!
 
def foglalas_3(a, b):
    return szabad(a, b)

foglalas_4:

class Foglalas(object):
    pass
 
################################
# Ellenorzo kod, ne modositsuk!
 
def foglalas_4(a, b):
    assert a.valtoztatas(b) == None
    return a.__dict__

foglalas_5:

class Foglalas(object):
    pass
 
def foglal(foglalasok, osszes_ules, nev, darab):
    pass
 
################################
# Ellenorzo kod, ne modositsuk!
 
def foglalas_5(a, b, c, d):
    ret = foglal(a, b, c, d)
    if ret:
        return ret.__dict__
    return ret

foglalas_6:

class Foglalas(object):
    pass
 
def foglal(foglalasok, osszes_ules, nev, darab):
    pass
 
################################
# Ellenorzo kod, ne modositsuk!
 
def foglalas_6(a, b, c, d):
    try:
        ret = foglal(a, b, c, d)
        return ret.__dict__
    except:
        return "Ellenor: hiba " +  sys.exc_info()[0].__name__ + " " + str(sys.exc_info()[1].args)
Személyes eszközök