Ed. Técnica, perguntado por brenorastafari8843, 11 meses atrás

Faça um programa para controlar um caixa eletrônico. Existem 6 tipos de notas: de 2, de 5,de 10, de 20, de 50, de 100. O programa deve inicialmente ler uma quantidade de notas de cada tipo, simulando o abastecimento inicial do caixa eletrônico. Depois disto, o caixa entra em operação contínua atendendo um cliente após o outro. Para sacar, o cliente fornece o valor do saque a ser efetuado e como resultado da operação, o programa deverá então escrever na tela a quantidade de notas de cada tipo que será dada ao cliente a fim de atender ao seu saque. Sempre que um saque for efetuado por um cliente, a quantidade inicial de dinheiro que foi colocada no caixa é decrementada. O programa deve pagar sempre com as maiores notas possíveis. Sempre que não for possível pagar somente com notas de 100, então o programa tentará complementar com notas de 50, depois com notas de 20, 10, 5 e 2. Antes de efetuar um saque para um cliente, ou seja, escrever na tela as notas que ele irá receber, o programa deve ter certeza que é possível pagá-lo, senão emitirá uma mensagem do tipo “Não Temos Notas Para Este Saque”. Caso o caixa fique abaixo de um certo mínimo, o algoritmo deverá parar de atender aos clientes e emitir uma mensagem do tipo “Caixa Vazio: Chame o Operador”. A interface com usuário (figura 1) do caixa eletrônico já é fornecido para você, juntamente com um contrato (Programa 2) para utilização da interface, que segue abaixo.

Soluções para a tarefa

Respondido por mayaravieiraj
1

Oi!

Segue abaixo um exemplar, que serve de inspiração para que você escreva  um programa para controlar um caixa eletrônico, seguindo as conformidades estabelecidas pelo enunciado.


public CaixaEletronico(){

   //construtor

}

public String pegaRelatorioCedulas() {

   String resposta = "";

   //logica de pega o relatorio de cedulas

   return resposta;

}

public String pegaValorTotalDisponivel() {

   String resposta = "";


   //logica de pega o valor total disponivel no caixa eletronio

   return resposta;

}

public String reposicaoCedulas(Integer cedula, Integer quantidade) {

   String resposta = "";

   //logica de fazer a reposicao de cedulas e criar uma mensagem (resposta) ao usuario

   return resposta;

}

public String sacar(Integer valor) {

   String resposta = "";

   //logica de sacar do caixa eletronico e criar um mensagem(resposta) ao usuario

   return resposta;


}

public String armazenaCotaMinima(Integer minimo) {

   String resposta = "";

   //logica de armazenar a cota minima para saque e criar um mensagem(resposta) ao usuario

   return resposta;

}

public boolean login(Integer conta, String senha) {

   //verifica se o conta e a senha sao validos no banco de dados

   return true;

}

public String pegaSaldo() {

   String resposta = "";

   //consulta no banco de dados o saldo do cliente

   return resposta;

}

public String transferir(Integer contaDestino, Double valor) {

   String resposta = "";

   //efetua a transferencia da conta logada para conta do destinatario

   return resposta;

}

public String depositar(Integer conta, Double valor) {

   String resposta = "";

   //efetua o deposito para conta

   return resposta;

}

public static void main(String arg[]){

   GUI janela = new GUI(new CaixaEletronico());

   janela.show();


}

Perguntas interessantes