AP3 ProgIII 2014 1 Gabarito
1143 palavras
5 páginas
Fundação CECIERJ - Vice Presidência de Educação Superior a DistânciaCurso de Tecnologia em Sistemas de Computação
Disciplina: Programação III
AP3 1° semestre de 2014.
Nome –
Assinatura –
Observações:
1. Prova sem consulta e sem uso de máquina de calcular.
2. Use caneta para preencher o seu nome e assinar nas folhas de questões e nas folhas de respostas.
3. Você pode usar lápis para responder as questões.
4. Ao final da prova devolva as folhas de questões e as de respostas.
5. Todas as respostas devem ser transcritas nas folhas de respostas. As respostas nas folhas de questões não serão corrigidas.
Questão 1) (5.0 pontos)
O ECAD (Escritório Central de Arrecadação e Distribuição) é um órgão público responsável por centralizar e distribuir os direitos autorais referentes à reprodução musical pública. Suponha que fomos contratados para elaborar um sistema de apoio a este controle. Considere a classe abstrata Reprodutivel dada abaixo: abstract class Reprodutivel { private int reproducoes; public Reprodutivel() { this.reproducoes = 0;
}
public void play() { this.reproducoes++; } public float direitos () { return ((float)(this.reproducoes)) * this.ecad(); }
}
public abstract float ecad();
Esta classe possui um atributo chamado reproducoes, o qual armazenará por quantas vezes uma dada música foi reproduzida. O método play simula uma reprodução, enquanto que o método direitos calcula o montante de direitos devidos por uma dada música. Para simplificar, a expressão para esse cálculo é a multiplicação do número de
reproduções pelo valor retornado pelo método ecad. Observe que este método é abstrato, assim como a classe.
Para esse sistema, devemos manipular 2 tipos de mídias: músicas isoladas e filmes, os quais normalmente contém uma trilha musical. Para cada destes tipos devemos guardar seus nomes e ano em que foram produzidos. Além desses, uma música deve conter a lista de compositores (strings apenas), enquanto que um filme deve conter o nome do seu diretor (string