Problema em Java

15 respostas
Math.August

Bom galera, preciso de uma ajudinha de vocês. Tenho uma prova dia 31/03, mas isso não importa. O que peço a vocês é uma ajuda em uma questão que serve como exemplo para prova. A questão é a seguinte:
Um restaurante precisa de um programa que controle as contas e gastos dos clientes e que possa ser operado pelo caixa do restaurante. Cada cliente deve ser identificado com nome, sua conta e por um numero(codigo). Cada cliente poderá fazer um deposito inicial no seu cartão. Uma compra só deverá ser efetuado se houver crédito suficiente na conta do cliente. O cliente só poderá fazer um novo crédito ou encerrar a conta quanto a conta tiver menos de 20,00 reais. a conta não pode ficar negativa. O cliente poderá conferir seu saldo em um terminal.
Bom essa é a questão. Queria um que alguem me desse um “norte” pra ve se eu consigo.
Agradeço desde já!

15 Respostas

ferreira2006
public class Cliente {
	private int codigo;
	private String nome;
	private double conta;
	private final double LIMITE = 20.00;
	
	// Criar cliente zerado
	public Cliente() { }
	
	// criar cliente com crédito
	public Cliente(double deposito) {
		this.conta = deposito;
	}
	
	// Implementar métodos para manipular conta
}

Começa com isso e desenrrola ....
d34d_d3v1l

Cara…

Ninguem faz trabalhos escolares para os outros aqui no forum. (Acredito que em local nenhum)…

Mas se quiser que eu faça uma aplicação…

R$ 500 - o .exe
R$ 1000 - .exe + source code

Mas se vc estiver procurando e tentando fazer e quer tirar uma duvida, ai sim
conte com a gente!

Abraços

God_of_Java

d34d_d3v1l:
Cara…

Ninguem faz trabalhos escolares para os outros aqui no forum. (Acredito que em local nenhum)…

Mas se quiser que eu faça uma aplicação…

R$ 500 - o .exe
R$ 1000 - .exe + source code

Mas se vc estiver procurando e tentando fazer e quer tirar uma duvida, ai sim
conte com a gente!

Abraços

Opa,

Barato heim, vou aproveitar e tercerizar uma parte do projeto aqui do trampo onde tenho que realizar um cadastro de usuários que está me tirando o sono.

d34d_d3v1l

asdhuadshuasduh

preço não é fixo não…
:wink:

Math.August

Valeu galera, eu não ponho mais isso ta blz, mas dúvidas pode esperar ^^
Obrigado

d34d_d3v1l

Math.August:
Valeu galera, eu não ponho mais isso ta blz, mas dúvidas pode esperar ^^
Obrigado

Obrigado pela compreenção!
Estaremos no aguardo de duvidas!
Abraços!

adriano_si

Math.August:
Valeu galera, eu não ponho mais isso ta blz, mas dúvidas pode esperar ^^
Obrigado

Bom o ferreira2006 te deu um Norte do que fazer… E aí ? desenrolou alguma coisa ???

Abs [] e bons estudos.

R

Eu gosto destas mensagens de dúvidas do tipo “todo o problema”. Pode servir como um medidor de mercado. Porque estas pessoas estão sinalizando que estão apenas estudando, vão virar chefe. Quanto mais chefe, maior o numero de vagas.

R

tenho uma dúvida:

Qual a diferença de conta para código?: Só se o código é o ID. Qual a estratégia para a formação da do numero da conta?

ferreira2006

codigo = id
conta = para circular dinheiro

R

A classe Cliente

package caixa;

import java.util.ArrayList;
import java.util.List;

public class Cliente{
  public static double saldoMinimo=20;
  private Integer id;
  private String nome;
  private Double saldo;
  private String conta;
  private Boolean ativa;
  private List<Compra>compras;
  
  public Integer getId(){return id;}
  public void setId(Integer id){this.id=id;}
  public String getNome(){return nome;}
  public void setNome(String nome){this.nome=nome;}
  public Double getSaldo(){return saldo;}
  public void setSaldo(Double saldo){this.saldo=saldo;}
  public void setConta(String conta){this.conta=conta;}
  public String getConta(){return conta;}
  public void setAtiva(Boolean ativa){this.ativa=ativa;}
  public Boolean getAtiva(){return ativa;}
  public void setCompras(List<Compra> compras){this.compras=compras;}
  public List<Compra> getCompras(){return compras;}
  
  public static Cliente create(String nome,double saldo,String conta){
    Cliente cliente=new Cliente();
    
    cliente.ativa=true;
    cliente.nome=nome;
    cliente.conta=conta;
    cliente.compras=new ArrayList<Compra>();
    cliente.saldo=saldo;
    return cliente;
  }
  
  public void novaCompra(Compra compra){
    if(saldo<saldoMinimo||saldo-compra.getValor()><0)
      throw new RuntimeException("Saldo Insuficiente");
    saldo-=compra.getValor();
    compra.setCliente(this);
    compras.add(compra);
  }
  
  public void fechaConta(){
    if(saldo>saldoMinimo)
      throw new RuntimeException("Conta não pode ser encerrada");
    ativa=false;
  }
}

A classe Compra

package caixa;

import java.util.Date;

public class Compra{
  private Integer id;
  private Date data;
  private Double valor;
  private Cliente cliente;
  
  public Integer getId(){return id;}
  public void setId(Integer id){this.id=id;}
  public Date getData(){return data;}
  public void setData(Date data){this.data=data;}
  public Double getValor(){return valor;}
  public void setValor(Double valor){this.valor=valor;}
  public Cliente getCliente(){return cliente;}
  public void setCliente(Cliente cliente){this.cliente=cliente;}
  
  public static Compra create(double valor){
    Compra compra=new Compra();
    
    compra.data=new Date();
    compra.valor=valor;
    return compra;
  }
}

O teste

import caixa.Cliente;
import caixa.Compra;

public class Teste{
  public static void main(String[]item){
    Cliente cliente=Cliente.create("ricardo",200,"0001");
    
    cliente.novaCompra(Compra.create(50));
    cliente.novaCompra(Compra.create(50));
    cliente.novaCompra(Compra.create(101));
    cliente.fechaConta();
  }
}
Math.August

Esse código é do problema que eu escrevi pra vcs?
Vou testar aqui e tentar estudar o código para eu entender
Valeu!

Math.August

adriano_si:
Math.August:
Valeu galera, eu não ponho mais isso ta blz, mas dúvidas pode esperar ^^
Obrigado

Bom o ferreira2006 te deu um Norte do que fazer… E aí ? desenrolou alguma coisa ???

Abs [] e bons estudos.


Não cara, não consegui desenrrolar pois eu to com outros deveres entende!? Mas eu vou estudar esses códigos que vcs estao postando, vou tentar lê.
Muitro obrigado! Pra todos! :smiley:

L

Math.August:
adriano_si:
Math.August:
Valeu galera, eu não ponho mais isso ta blz, mas dúvidas pode esperar ^^
Obrigado

Bom o ferreira2006 te deu um Norte do que fazer… E aí ? desenrolou alguma coisa ???

Abs [] e bons estudos.


Não cara, não consegui desenrrolar pois eu to com outros deveres entende!? Mas eu vou estudar esses códigos que vcs estao postando, vou tentar lê.
Muitro obrigado! Pra todos! :smiley:

vc é novo em java?, já leu alguns livros ou ta indo no escuro?

Math.August

É eu tô aprendendo ainda
To lendo Caelum, uma apostila que explica Java
Vlw

Criado 29 de março de 2011
Ultima resposta 31 de mar. de 2011
Respostas 15
Participantes 7