Programovací test - cvičení Ing. Pavlíčkové
projekty pro testy
Následují jednotlivé projekty připravené na test:
ukázky zadání
1. Věc v místnosti
Stáhněte si projekt vec1, ve které je třída Vec s atributy nazev (jméno věci) a sebratelna (zda lze věc z místnosti sebrat). Dále má metody getNazev(), isSebratelna(), equals() a hashCode(). Vaším úkolem je naprogramovat třídu Mistnost, která bude mít datový atribut nazevMistnosti typu String (nastavení přes konstruktor) a metody:
public boolean vlozVec(Vec vec)
- vloží věc do místnosti; pokud již věc stejného jména v místnosti existuje, tak se nevloží a metoda vrátí false; při úspěšném vložení vrátí metoda hodnotu true;
public Vec odeberVec(String nazevVeci)
- odebere věc z místnosti a vrátí její instanci jako návratovou hodnotu; pokud v místnosti není věc zadaného jména, tak metoda vrátí hodnotu null,
public Collection<Vec> sebratelneVeci()
- metoda vráti seznam věcí, které lze sebrat v místnosti (tj. ne všechny věci).
Ke třídě Mistnost vytvořte testovací třídu, ve které otestujete:
- metody vlozVec a odeberVec; u metody odeberVec situaci kdy věc je v místnosti i situaci, kdy věc není v místnosti,
- metodu sebratelneVeci - otestovat, že vrací pouze sebratelné věci
2. Věc a batoh
Stáhněte si projekt vec1, ve které je třída Vec s atributy nazev (jméno věci) a sebratelna (zda lze věc z místnosti sebrat). Dále má metody getNazev(), isSebratelna(), equals() a hashCode(). Vaším úkolem je naprogramovat třídu Kosik, která bude sloužit pro "přenášení" věcí. V konstruktoru třídy Kosik bude parametr kapacita typu int pro zadání kapacity košíku, tj. kolik lze maximálně nést věcí v košíku. Košík bude mít následující metody:
public boolean vlozVec(Vec vec)
- vloží věc do košíku; pokud je již košík plný, tak se věc nevloží a metoda vrátí false; při úspěšném vložení vrátí metoda hodnotu true;
public Vec odeberVec(String nazevVeci)
- odebere věc z košíku a vrátí její instanci jako návratovou hodnotu; pokud v košíku není věc zadaného jména, tak metoda vrátí hodnotu null,
public Collection<Vec> seznamVeci()
- metoda vráti seznam věcí v košíku.
Ke třídě Kosik vytvořte testovací třídu, ve které otestujete:
- metody vlozVec a odeberVec; u metody odeberVec situaci kdy věc je v košíku i situaci, kdy věc není v košíku;
- kapacitu košíku, tj. že nelze vložit více věcí, než je kapacita,
- metodu seznamVeci - otestovat, že vrací věci v košíku,
3. Věc s cenou
Stáhněte si projekt vec2, ve které je třída Vec s atributy nazev (jméno věci) a cena (typu int). Dále má metody getNazev(), getCena(), equals() a hashCode(). Vaším úkolem je naprogramovat třídu SeznamVeci, která bude mít metody:
public boolean vlozPolozku(Vec vec)
- vloží věc do seznamu; pokud již věc stejného jména v seznamu existuje, tak se nevloží a metoda vrátí false; při úspěšném vložení vrátí metoda hodnotu true;
public boolean zrusPolozku(String nazevVeci)
- zruší věc v seznamu a vrátí true; pokud v seznamu nabízených věcí není, tak metoda vrátí hodnotu false,
public Collection<Vec> nabidka(int odCeny, int doCeny)
- metoda vráti seznam věcí s cenou větší nebo rovnou parametru odCeny a současně s cenou menší nebo rovnou hodnotě parametru doCeny (tj. ne všechny věci).
Ke třídě SeznamVeci vytvořte testovací třídu, ve které otestujete:
- metody vlozPolozku a zrusPolozku; u metody zrusPolozku situaci kdy věc je v seznamu i situaci, kdy věc není v seznamu,
- metodu nabidka - otestovat, že vrací věci s cenou v rozmezí danném parametry,