Commit 942288a3 authored by Ing. Petr Pauš, Ph.D.'s avatar Ing. Petr Pauš, Ph.D.
Browse files

Zadaní cv2

parent c0222389
Loading
Loading
Loading
Loading

2025/02/README.md

0 → 100644
+17 −0
Original line number Diff line number Diff line
# OOP v Pythonu

## Zadání příkladu

Vytvořte hierarchii tříd podle následujícího zadání:

 - Třída *Equipment* popisuje vybavení domácnosti. Konstruktor má parametry *id* a *name*. Přetižte metodu *__str__()*, aby vypisovala *name* a *id*.
 - Třída *Furniture* je odvozená od *Equipment* a v konstruktoru má navíc parametr *legs* udávající počet nohou nábytku. Metoda *__str__()* vypíše navíc i počet nohou.
 - Třída *Electronics* je odvozená od *Equipment* a v konstruktoru má navíc parametr *power* udávající spotřebu. Metoda *__str__()* vypíše navíc i spotřebu.
- Třída *WashingMachine* je odvozená od *Electronics* a v kontruktoru má navíc parametr *weight*. Metoda *__str__()* vypíše navíc i váhu.
- Třída *Household* je samostatná třída spravující domácnost.
  - Má metodu *add*, která umožní do domácnosti přidat vybavení *Equipment*. Pokud už vybavení se stejným *id* existuje, vyhodí výjimku.
  - Má metodu *delete(id)*, která z domácnosti vymaže zařízení podle *id*. Pokud neexistuje, vyhodí výjimku.
  - Má přetíženou metodu *__str__()*, která vypíše vsechno vybavení domácnosti.


Napište i kus kódu, který zmíněné třídy využívá (hlavně přidání do domácnosti a mazaní a výpis domácnosti).