Baixe o app para aproveitar ainda mais
Prévia do material em texto
Introdução à Programação Orientada a Objetos Prof. Elder Rizzon Santos Universidade Federal de Santa Catarina Prova Final Aluno: ____________________________________________________________ 1. Considerando a classe Funcionario, especificada abaixo, construa uma sub-‐classe de Funcionario chamada Socio. Além dos atributos de Funcionario, um sócio possui uma cota de participação nos dividendos da empresa (especificada em pontos percentuais: de 0 a 100 – ou 0 a 1 se preferir). Com base no construtor disponível na classe funcionário, implemente um construtor para a classe Socio. O construtor deve inicializar todos os atributos (herdados e especializados). Na classe Socio, sobrescreva o método public double calculaRenda(double dividendos). Nesse caso, a renda é calculada somando-‐se à renda base o percentual dos dividendos que o sócio possui (ex.: dividendos = 100,00; participação = 20%; retorno = renda base + 20,00). Considerando a classe CadastroDeFuncionarios (apresentada abaixo) implemente o método public void listagemPorFaixadeRenda(double ini, double fim), o qual deve listar (para o usuário, em modo texto) todos os nomes dos funcionários (funcionários e sócios) cuja renda está dentro da faixa especificada pelos parâmetros (ini e fim). Os funcionários da empresa são armazenados no atributo funcionarios. (Classe Sócio: 1,5pts, método listagemPorFaixaDeRenda: 2,5 pts.) public class Funcionario { private double renda_base; private String nome; public Funcionario(double renda_base, String nome) { this.renda_base = renda_base; this.nome = nome; } public String obtemNome(){ return this.nome; } public double calculaRenda(double dividendos){ return renda_base; } } public class CadastroDeFuncionarios { private Funcionario[] funcionarios; public CadastroDeFuncionarios(int cad){ this.funcionarios = new Funcionario[cad]; } } 2. Elabore um método (assinatura e implementação) que recebe uma matriz qualquer por parâmetro e exibe para o usuário (em modo texto) quais as duas linhas com as menores somas (de todos os elementos da linha). Exemplo: (3,5 pts) 1 2 3 4 à soma = 10 1 1 1 1 à soma = 4 1 5 5 5 à soma = 16 2 2 2 à soma = 6 1 7 8 9 à soma = 25 Saída: A linha com a menor soma é a 1. A linha com a 2a menor soma é a 3. 3. Elabore um método (assinatura e implementação) que recebe um número inteiro n e exibe a seguinte série para o usuário (em modo texto), com base no parâmetro n. (2,5 pts) Exemplos: n = 5 n=50 S = 11+ 3 2 + 5 3 + 7 4 + 9 5 50 99... 4 7 3 5 2 3 1 1S +++++= Boa Prova!
Compartilhar