Buscar

Prof. Elder R. Santos - Prova Final - 2011-2

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

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!

Continue navegando