Controle de dispenser (ATM)

18 respostas
B

Boa tarde…

Galera estou como estou começando a estudar java, estou com algumas dúvidas!?

tenho esse problema para resolver :

Uma empresa, que desenvolve equipamentos para rede bancária, precisa atualizar o software de controle do dispenser de dinheiro numa linha de caixas eletrônicos (ATM).
Sua equipe foi designada para modelar, codificar e documentar uma aplicação para controle do dispenser (cash dispenser) para essa linha de caixas eletrônicos. A previsão para esse caixa é possuir apenas notas de R$ 20,00 e R$ 50,00.

Utiliza recursos de modularização para organizar o código.[/b][/b][/b][/b]

se puderem me ajudar?
abraços

18 Respostas

lucas_carvalho100

Não sei se entendi, você quer construir este sistema?
Tem como você explicar melhor ai…

abraços…

B

contruir o sistema utilizando recusros de modularização.

lucas_carvalho100

Como você tem que separar, acho que era legal você ter tipo uma classe dinheiro (mais ou meno igual a uma classe produto, no caso seu produto será o dinheiro), pois você terá que armazenar quantas notas cada caixa eletronico possui, e qual o tipo da nota, 50,20 e etc, quando o usuario passar o cartão você verifica qual a melhor forma de lhe entregar o dinheiro, por exemplo se o usuário pedir R$ 100 você entrega para ele duas notas de 50…

Se entendi acho que é +/- por ai, blz?

Abraços…

B

eh mais ou menos isso mesmo…

lucas_carvalho100

Voce tb pode separa o caixa eletronico em uma classe, o cliente em uma classe e etc… Tenta imaginar o processo, ai no que você imaginar você separa, blz?

Abraços…

B

o problema eh que não estou conseguindo montar…

lucas_carvalho100

Você não esta conseguindo montar nd? Ou vc ta com alguma duvida em alguma parte?

B

não estou conseguindo montar nada … na teoria eu entendi , mas não estou conseguindo programar … estou usando o eclipse

lucas_carvalho100

Vamo lá entao,

Pensa ai o que você acha que precisa para criar um caixa eletronico? A resposta serão atributos da classe.
O que você precisa para armazenar o dinheiro? A resposta serão atributos da classe.

Blz?

Você ta com duvida na codificação ou no algoritimo?

B
preciso de uma entrada que seria o cartão magnetico;

depois iria entrar com o valor dentre os valores seriam 20 e 50 reais ;

faria a leitura e soltar o dinheiro

seria mais ou menos isso!?

lucas_carvalho100

Entao com o código do cartao você busca o cliente, e solicita a senha dele, após fazer isso você pede a quantia verifica se a quantia esta disponivel e você efetua o saque da conta do cliente…
Mais ou menos assim…

B

esta certo … na teoria eu entendi o que vc me disse , mas mesmo assim não estou conseguindo montar o algoritmo… vc teria algum exemplo para me mostrar?

B

desde jah agradeço toda ajuda …

lucas_carvalho100

Você vai precisar controlar o saldo do cliente?

B

não precisa não eh só saque mesmo

lucas_carvalho100

Vou fazer algo bem simples aqui...

public class Cliente {

	private int codigo;

	private String nome;

	private String codigoCartao;

	private String senhaCartao;

	private double valorEmConta;

	public double getValorEmConta() {
		return valorEmConta;
	}

	public void setValorEmConta(double valorEmConta) {
		this.valorEmConta = valorEmConta;
	}

	public int getCodigo() {
		return codigo;
	}

	public void setCodigo(int codigo) {
		this.codigo = codigo;
	}

	public String getNome() {
		return nome;
	}

	public void setNome(String nome) {
		this.nome = nome;
	}

	public String getCodigoCartao() {
		return codigoCartao;
	}

	public void setCodigoCartao(String codigoCartao) {
		this.codigoCartao = codigoCartao;
	}

	public String getSenhaCartao() {
		return senhaCartao;
	}

	public void setSenhaCartao(String senhaCartao) {
		this.senhaCartao = senhaCartao;
	}

	// retorna o codigo do cliente
	public boolean login(String codigoCartao, String senhaCartao) {

		if (codigoCartao.equals(this.codigoCartao)
				&& senhaCartao.equals(this.senhaCartao)) {
			System.out.println("Cartão existe");
			return true;
		} else {
			System.out.println("Cartão não existe");
			return false;
		}

	}

}
public class CaixaEletronico {

	public void saque(double valor, Cliente cliente) {

		if (cliente.getValorEmConta() >= valor) {
			System.out.println("Saque disponivel");
		} else {
			System.out.println("Saque indisponivel disponivel");
		}

	}

}
import java.io.IOException;

public class Inicio {

	/**
	 * @param args
	 * @throws IOException
	 */
	public static void main(String[] args) throws IOException {
		// TODO Auto-generated method stub

		Cliente cliente = new Cliente();

		if (cliente.login("1223263", "12145")) {

			System.out.print("Digite o valor a ser sacado");
			double valor = 0;
			valor = System.in.read();

			CaixaEletronico caixa = new CaixaEletronico();

			caixa.saque(valor, cliente);

		}

	}

}

Ficou mais ou menos, acabei de fazer aqui, esse código é só pra vc ter uma ideia, agora é com vc...
Qualquer duvida posta ai...
abraços;....

B

valeu … jah ajudou muito… falow t+

lucas_carvalho100

Esse ai da pra vc melhorar ele 100%, nao ficou muito legal pq to aqui no trabalho… rsrsrs…

Abraços e boa sorte…

Criado 31 de maio de 2010
Ultima resposta 31 de mai. de 2010
Respostas 18
Participantes 2