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. Elabore um método em Java (assinatura e implementação) que recebe uma matriz de tamanho qualquer por parâmetro - cujos elementos são valores maiores que 0 - e exibe para o usuário (em modo texto) quais as duas linhas com as maiores somas (de todos os elementos da linha). (3 pts --> 1 pt- maior, 2pts - 2a maior) Exemplo: 10 1 2 3 1 90 1 10 9 Saída: A linha com a maior soma é a 1. A linha com a 2a maior soma é a 2. 2. 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 de 0 a 1, se preferir). (0,5 pts) 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). Os herdados através do super. (0,5pts) 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; cota de participação = 20%; retorno = renda base + 20,00). DICA: Atenção, o atributo renda_base é privado. (1,5 pts) 3. 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. (2 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]; } } 4. Construa um método em Java (assinatura e implementação) que recebe um número maior do que 1 (n) por parâmetro e retorna um vetor com (n) números da série de Fibonacci. A série de Fibonacci sempre começa com 0 e 1. Série de Fibonacci: (2,5 pts) 0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144,... Exemplo: n=5, retorno: {0, 1, 1, 2, 3} Boa prova!
Compartilhar