Musikinstrumente
Sie entwickeln eine Anwendung zur Verwaltung des Instrumentenbestands eines Orchesters. Dabei müssen Sie verschiedene Arten von Musikinstrumenten und deren Aktionen modellieren.
Ihre Aufgabe ist es, eine Klasse MusicInstrument zu erstellen, die zwei Attribute besitzt: name und type. Diese Klasse sollte außerdem eine Methode play() haben, die "Playing the instrument" ausgibt.
Erstellen Sie anschließend eine Klasse Guitar, die von der Klasse MusicInstrument erbt (Gitarre hat den type String, welcher automatisch im __init__ von Guitar gesetzt werden sollte). Diese Klasse sollte eine Methode tune() haben, die "Tuning the guitar" ausgibt. Die Methode play() in der Klasse Guitar sollte zuerst die Methode tune() aufrufen und dann mit super() die play()-Methode der Elternklasse aufrufen.
Erstellen Sie auf ähnliche Weise eine Klasse Violin wie die Klasse Guitar (sie hat ebenfalls den type String). Die Methode tune() sollte "Tuning the violin" ausgeben.
Abschließend erstellen Sie eine Klasse Piano, die ebenfalls von der Klasse MusicInstrument erbt (Klavier hat den type Keyboard). Die Klasse Piano sollte die Methode play() überschreiben, jedoch sollte das Instrument beim Spielen nicht gestimmt werden.
Eingabe | Ausgabe |
|---|---|
| Tuning the guitar |
Hinweis: Die Attribute name und type des Instruments sollten beim Instanziieren als Parameter an den Klassenkonstruktor übergeben werden. Die Methode play() sollte ohne Parameter aufgerufen werden.
Constraints
Time limit: 2 seconds
Memory limit: 512 MB
Output limit: 1 MB