Exercícios 23 - Classe ListaFuncionarios
23.1 Implemente a classe ListaFuncionarios para armazenar informações de vários
funcionários (vendedores e gerentes).
Atributos
Um array de objetos da classe Funcionario.
A quantidade de elementos armazenados no array de funcionarios - (int)
Construtor
Recebe como argumento a quantidade máxima de funcionários que poderão ser
armazenados no array. O construtor deve criar o array e atribuir zero ao atributo que
representa a quantidade de funcionários armazenados no array.
Métodos
inclui
Entrada: Um funcionário (Funcionario)
Retorno: Nenhum
Descrição: Armazena o funcionário fornecido como argumento na primeira posição
disponível do array. O funcionário só deve ser armazenado se todas as posições não
estiverem preenchidas. Caso o array já esteja completo o funcionário não será
armazenado.
tamanho
Entrada: Nenhuma
Retorno: A quantidade de funcionários armazenados no array.
obtem
Entrada: Um índice do array
Retorno: O funcionário armazenado no índice passado como argumento. Caso o índice
seja inválido deve ser retornado uma referência nula (null)
exibeSalarios
Entrada: Nenhuma
Retorno: Nenhum
Descrição: Exibe o nome e o salario final de cada funcionário armazenado no array.
reajustaSalarioBase
Entrada: percentual de reajuste
Retorno: Nenhum
Descrição: Reajusta o salário base de todos os funcionários armazenados no array.
calcTotalFolha
Entrada: Nenhuma
Retorno: A soma do salário final de todos os funcionários armazenados no array.
23.2 Escreva um programa para criar um objeto da classe ListaFuncionario capaz de
armazenar até 10 funcionários. A seguir ler uma quantidade indeterminada de inteiros
que representam códigos de uma operação conforme os itens do cardápio abaixo. O
programa deve executar a operação escolhida.
0.Fim
1.Inclui vendedor
2.Inclui Gerente
3.Exibe todos os funcionários
Inclui vendedor
A inclusão do vendedor deve ser executada através da chamada ao método estático
especificado abaixo (implementar o método na classe que representa o exercício).
incluiVendedor
Entrada: Uma lista de funcionários
Retorno: Nenhum
Descrição: Faz a leitura do nome do vendedor, seu salário base e respectivo valor das
vendas. Cria um objeto da classe Vendedor e faz a inclusão na lista de funcionários
passada como argumento.
Inclui gerente
A inclusão do gerente deve ser executada através da chamada ao método estático
especificado abaixo (implementar o método na classe que representa o exercício).
incluiGerente
Entrada: Uma lista de funcionários
Retorno: Nenhum
Descrição: Faz a leitura do nome do gerente, seu salário base e respectiva quantidade de
horas extras. Cria um objeto da classe Gerente e faz a inclusão na lista de funcionários
passada como argumento.
Exibe todos os funcionários
Chama o método exibeSalarios da classe ListaFuncionarios para exibir o salário base
de todos os funcionários informados.
23.3 Acrescente ao programa anterior os seguintes itens:
4.Exibe total da folha
5.Reajusta salário base
Exibe total da folha
Chama o método calcTotalFolha da classe ListaFuncionarios para obter a soma dos
salários dos funcionários exibindo-a na tela.
Reajusta salário base
Faz a leitura do percentual de reajuste que será fornecido a todos os funcionários.
Aplica o percentual a todos os funcionários através da chamada ao método
reajustaSalarioBase
23.4 Acrescente ao programa anterior os seguintes itens:
6.Exibe estatística
7.Altera percentual de comissão dos vendedores
Exibe estatística
Imprime a quantidade de vendedores e gerentes armazenados na lista de funcionários. A
impressão deve ser executada através da chamada ao método estático especificado
abaixo (implementar o método na classe que representa o exercício).
exibeEstatisticas
Entrada: Uma lista de funcionários
Retorno: Nenhum
Descrição: Exibe a quantidade de vendedores e gerentes existentes na lista de
funcionários passada como argumento. Para verificar se o funcionário armazenado na
lista é um vendedor ou gerente utilize instanceof que permite verificar se uma
referência é uma instância de uma determinada classe.
if (func instanceof Vendedor)
......
Altera percentual de comissão dos vendedores
Faz uma chamada ao método estático especificado abaixo (implementar o método na
classe que representa o exercício).
alteraPercComissao
Entrada: Uma lista de funcionários
Retorno: Nenhum
Descrição: Faz a leitura do novo percentual de comissão oferecido aos vendedores.
Altera o percentual de comissão de todos os funcionários que são vendedores (dica:
utilize instanceof).
Download

Aula 003 - Exercícios - 08