Anonymní profil Janulka – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

Anonymní profil Janulka – Programujte.comAnonymní profil Janulka – Programujte.com

 

Příspěvky odeslané z IP adresy 90.176.43.–

Janulka
Python › Python Databaze
1. 11. 2011   #149393

Tak něco už mám, ale nejede.. skuste na to někdo prosím mrknout..:(

class Polozka(object):
    
    def __init__(self, id, nazev, mistnost, cena, koef_amortizace):
        self.id = id
        self.nazev = nazev
        self.mistnost = mistnost
        self.cena = cena
        self.koef_amortizace = koef_amortizace


        majetek = []
        majetek = [self.id, self.nazev, self.mistnost, self.cena, self.koef_amortizace]
            
    def amortizace(self):
                  
        self.zbytkova_cena = self.zbytkova_cena - self.puvodni_cena * self.koef_amortizace             
    def __str__(self):
        String_id = ""
        String_nazev = ""
        String_mistnost = ""
        String_cena = ""

        String_id= str(self.id)
        String_nazev = str(nazev)
        String_mistnost = str(mistnost)
        String_cena = str(cena)

        Vysledek = String_id + " " + String_nazev + " " + String_mistnost + " " + String_cena
        return Vysledek

           
        
  
class Inventar(object):
    """Třída reprezentuje databázi majetku VŠB. Nad touto databází je
       možno provádět jednoduché operace přidání, listování počtu
       položek a listování souhrnné ceny majetku. """

    db = {}
  
    def __init__(self):
        self.inventaar = {}
        self.majetek = nazev
            
    def pridej(self, majetek):
        self.invertar[id] = majetek
            
    def cena_polozek(self, fakulta):
      
        #return sum([ self.inventar[x].zbytkova_cena for x in self.inventar.keys() if fakulta in x])
        return sum([ self.inventar[x].zbytkova_cena for x in self.inventar.keys()])

    def proved_amortizaci(self, fakulta):
       
        for x in self.inventar:
            if (x == fakulta ):
                x.zbytkova_cena = self.zbytkova_cena - self.puvodni_cena * self.koef_amortizace
        pass

def main():
      
    inventar = Inventar()
    inventar.pridej(Polozka("FEI/4605511", "Zidle", "A1036", 1600, 0.05))
    inventar.pridej(Polozka("FEI/4605512", "Stul", "A1036", 2360, 0.05))
    inventar.cena_polozek("FEI")
    inventar.proved_amortizaci("FEI")
    print inventar.cena_polozek("FEI")
    print inventar.cena_polozek("HGF")
  

#if __name__ == '__main__':
#    main()

Janulka
Python › Python Databaze
1. 11. 2011   #149378

Zdravim, nějak si nevím rady jak začít, či co stím mám vlastně dělat:( prosím tedy o pomoc či nakopnutí...:( 

zadaní:

Naprogramujte třídy Inventar a Zidle.

POPIS TŘÍDY "POLOZKA":

Třída reprezentuje fyzickou položku v majetku VŠB. Její atributy a metody jsou vypsány níže:

Id položky je vždy string ve tvaru <fakulta>/cislo, kde <fakulta> je jedna z následujících zkratek: FEI, HGF, EkF, FBI, FMMI, FS, FAST.

Metoda amortizace provede amortizaci položky podle zadaního amortizačního koeficientu. Při vytvoření objektu je puvodni_cena a zbytkova_cena nastavena na stejnou hodnotu. Pro provedení amortizace bude zbytkova_cena snizena. Vzorec pro výpočet zbytkové ceny je následující:
zbytkova_cena = zbytkova_cena - puvodni_cena * koef_amortizace

Metoda __str__ bude vracet řetězec v následujícím tvaru: Typ: <typ>, ID: <id>, Mistnost: <mistnost>, kde hodnoty mezi šipkami budou aktuální hodnoty položky. Metoda se volá například při použití print. Příklad je uveden níže.

Její atributy a metody jsou vypsány níže:

Třída Polozka:

atributy:
id
nazev
mistnost
puvodni_cena
zbytkova_cena
koef_amortizace
metody:
__init__(self, id, nazev, mistnost, cena, koef_amortizace)
amortizace(self)
__str__(self)
POPIS TŘÍDY "INVENTAR":

Třída reprezentuje databázi majetku VŠB. Nad touto databází je možno provádět jednoduché operace přidání, listování počtu položek a listování souhrnné ceny majetku.

Databázi, která obsahuje majetek implementujte jako slovník, kde klíčem bude id položky.

Metoda cena_polozek vrátí zbytkovou cenu všeh položek, které patří dané fakultě.

Metoda pocet_polozek vrátí počet položek, které patří dané fakultě.

Metoda proved_amortizaci provede amortizaci položek, které patří dané fakultě.

Atributy a metody třídy jsou vypsány níže:

Třída Inventar:

atributy:
inventar (slovník)
metody:
__init__(self)
pridej(self, majetek)
pocet_polozek(self, fakulta)
cena_polozek(self, fakulta)
proved_amortizaci(self, fakulta)
Příklad výstupního souboru po běhu skriptu DBZamestnancu.py: vystup.txt.

EXAMPLE:

inventar = Inventar()
inventar.pridej(Polozka("FEI/4605511", "Zidle", "A1036", 1600, 0.05))
inventar.pridej(Polozka("FEI/4605512", "Stul", "A1036", 2360, 0.05))
print inventar.inventar["FEI/4605511"]
print inventar.cena_polozek("FEI")
inventar.proved_amortizaci("FEI")
print inventar.cena_polozek("FEI")
print inventar.cena_polozek("HGF")

Výstup:
Typ: Zidle, ID: FEI/4605511, Mistnost: A1036
3960
3762.0
0

předem děkuji 

 

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032024 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý