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