Considere um Sistema de Controle de Gastos de Mesada. Esse sistema apresenta uma classe chamada Despesa, com os atributos valor, do tipo double e tipoDeGasto, do tipo String e métodos para obter e alterar esses atributos (métodos get e set).
Esse sistema apresenta também uma classe ControleDeGastos, que apresenta um atributo chamado despesas, que é um array de objetos do tipo Despesa e o método setDespesas. Essa classe apresenta também um método chamado calculaTotalDeDespesas, que não tem parâmetros e deve retornar o valor total das despesas do sistema. Nessa classe há ainda o método existeDespesaDoTipo(String tipoDeGasto) que verifica se dentre as despesas guardadas no ControleDeGastos há alguma delas que é do tipo passado retornando true neste caso e false, caso contrario.
a) Implemente a classe Despesa.
b) Implemente a classe ControleDeGastos.
c) Escreva um programa principal que crie um objeto do tipo ControleDeGastos e que tenha ao menos duas despesas. Faça com que o programa imprima o total das despesas utilizando o método correspondente da classe ControleDeGastos.
public class Despesa{
private double valor;
private String tipoDeGasto;
Despesa(String tipoDeGasto, double valor){
this.tipoDeGasto = tipoDeGasto;
this.valor = valor;
}
public double getValor() {
return valor;
}
public void setValor(double valor) {
this.valor = valor;
}
public String getTipoDeGasto() {
return tipoDeGasto;
}
public void setTipoDeGasto(String tipoDeGasto) {
this.tipoDeGasto =
tipoDeGasto;
}
}
//b)
public class
ControleDeGastos{
private Despesa despesas[] = new
Despesa[2];
public void setDespesas(Despesa
despesas[]){
this.despesas = despesas;
}
public double calculaTotalDeDespesas(){
double total=0;
for(int i = 0; i < despesas.length; i++){
total+=despesas[i].getValor();
}
return total;
}
public boolean existeDespesaDoTipo(String
tipoDeGasto){
for(int i = 0; i < despesas.length;
i++){
if(tipoDeGasto ==
despesas[i].getTipoDeGasto()){
return
true;
}
} return false;}}
//c)
public class Gastos{
public static void main(String[] args){
Despesa arrayDespesas[] =
new Despesa[2];
arrayDespesas[0] = new
Despesa("passagem", 80.15);
arrayDespesas[1] = new
Despesa("jogo", 100.00);
ControleDeGastos despesasTotais = new
ControleDeGastos();
despesasTotais.setDespesas(arrayDespesas);
System.out.println("Total das
despesas: " + despesasTotais.calculaTotalDeDespesas());
System.out.println("alguma despesa
com apostila? " + despesasTotais.existeDespesaDoTipo("apostila")
+"\nalguma
despesa com passagem? " +
despesasTotais.existeDespesaDoTipo("passagem"));
}
}
Nenhum comentário:
Postar um comentário