terça-feira, 9 de dezembro de 2014

Considere um Sistema de Controle de Pagamentos de Funcionários de uma empresa.

Esse sistema apresenta uma classe chamada Pagamento, com os atributos valorPagamento, do tipo double e nomeDoFuncionario, do tipo String e métodos para obter e alterar esses atributos (métodos get e set).
Esse sistema apresenta também uma classe ControleDePagamentos, que apresenta um atributo chamado pagamentos, que é um array de objetos do tipo Pagamento e o método setPagamentos. Essa classe apresenta também um método chamado calculaTotalDePagamentos, que não tem parâmetros e deve retornar o valor total dos pagamentos do sistema. Nessa classe há ainda o método existePagamentoParaFuncionario (String nomeFuncionario) que verifica se dentre os pagamentos guardados no ControleDePagamentos há algum deles que se refere ao funcionário passado como parâmetro, retornando true neste caso e false, caso contrario.

a) Implemente a classe Pagamento.
b) Implemente a classe ControleDePagamentos.
c) Escreva um programa principal que crie um objeto do tipo ControleDePagamentos e que tenha ao menos dois pagamentos. Faça com que o programa imprima o total dos pagamentos utilizando o método correspondente da classe ControleDePagamentos.

Feito:

public class Pagamento{
    private double valorPagamento;
    private String nomeDoFuncionario;

    public double getValorPagamento() {
        return valorPagamento;
    }
    public void setValorPagamento(double valorPagamento) {
        this.valorPagamento = valorPagamento;
    }

    public String getNomeDoFuncionario() {
        return nomeDoFuncionario;
    }
    public void setNomeDoFuncionario(String nomeDoFuncionario) {
        this.nomeDoFuncionario = nomeDoFuncionario;
    }       
}
  
//b)
public class ControleDePagamento{
    private Pagamento pagamentos[] = new Pagamento[2];
   
    public void setPagamentos(Pagamento pagamentos[]){
        this.pagamentos = pagamentos;
    }
   
    public double calculaTotalDePagamentos(){
        double total=0;      
        for(int i = 0; i < pagamentos.length; i++){
            total+=pagamentos[i].getValorPagamento();
        }    
        return total;
    }
   
    public boolean existePagamentoParaFuncionarios(String funcionario){
        for(int i = 0; i < pagamentos.length; i++){
            if(funcionario == pagamentos[i].getNomeDoFuncionario()){
                return true;
            }
        }
        return false;
    }
}

//c)
public class SistemaDePagamentos{
    public static void main(String[] args){
        Pagamento arrayPagamentos[] = new Pagamento[2];
        arrayPagamentos[0] = new Pagamento();
        arrayPagamentos[0].setNomeDoFuncionario("João");
        arrayPagamentos[0].setValorPagamento(15000.00);
       
        arrayPagamentos[1] = new Pagamento();       
        arrayPagamentos[1].setNomeDoFuncionario("Laura");
        arrayPagamentos[1].setValorPagamento(21750.00);
       
        ControleDePagamento pagamentosTotais = new ControleDePagamento();
        pagamentosTotais.setPagamentos(arrayPagamentos);
       
        System.out.println("Total das despesas: " + pagamentosTotais.calculaTotalDePagamentos());
        System.out.println("Pagamento João? " + pagamentosTotais.existePagamentoParaFuncionarios("João")
                          +"\naPagamento Rodrigo? " + pagamentosTotais.existePagamentoParaFuncionarios("Rodrigo"));
    }

}

Nenhum comentário:

Postar um comentário