Instrumentos Musicais
Está a desenvolver uma aplicação para gerir o inventário de instrumentos de uma orquestra musical. Precisa de modelar diferentes tipos de instrumentos musicais e as suas ações.
Foi-lhe pedido para criar uma classe MusicInstrument que tem dois atributos: name e type. Esta classe deve também ter um método play() que imprime "Playing the instrument".
Em seguida, crie uma classe Guitar que herda da classe MusicInstrument (Guitarra é do type String. Isto deve ser definido automaticamente no __init__ de Guitar). Esta classe deve ter um método tune() que imprime "Tuning the guitar". O método play() na classe Guitar deve primeiro chamar o método tune() e depois chamar play() da classe pai usando super().
Crie uma classe Violin da mesma forma que a classe Guitar (também é do type String). O método tune() deve imprimir "Tuning the violin".
Por fim, crie uma classe Piano que também herda da classe MusicInstrument (Piano é do type Keyboard). A classe Piano deve sobrescrever o método play(), mas não deve ser afinado quando tocado.
Input | Output |
|---|---|
| Tuning the guitar |
Nota: Os atributos name e type do instrumento devem ser passados como parâmetros para o construtor da classe durante a instanciação. O método play() deve ser chamado sem quaisquer parâmetros.
Constraints
Time limit: 2 seconds
Memory limit: 512 MB
Output limit: 1 MB