Simulação de uma Conta Corrente

3 respostas
S

Pessoal,

Pediram-me p fazer uma simulação de uma conta-corrente, onde inicialmente se colocaria a quantidade de notas que quizesse, no caixa eletronico. Por exemplo: vou alimentá-lo inicialmente com 10 notas de R$ 50,00; 5 notas de R$ 20,00; 5 notas de R$ 10,00 e 5 notas de R$ 5,00.

E depois o cliente irá sacar p dinheiro… só que haverá uma validação se o dinheiro está disponível.

A lógica é simples, na verdade estou com dúvida, pois me disseram que eu deveria utilizar um Array para armazenar as notas. É possível???
Cada posição do vetor estaria a nota? E a quantidade das notas ficariam onde?

Realmente nao estou compreendendo.

Agradeco a atencao de todos.

Aguardo Retorno.

3 Respostas

B

Acho que você não precisa de um array. Basta colocar uma variável para ser a quantidade de notas de cada valor.
Ex.: int qtdcinco, qtddez, qtdvinte etc.

Aí quando você retirar ou depositar o dinheiro basta decrementar ou incrementar os variáveis quantidade.

Espero ter ajudado.

Valeu.

L

bom parceiro fiz um sistema semelhante veja em anexo.

para compilar

javac Sistemab.java Banco.java
S

Pessoal,
A medida q se efetua o saque o programa deverá fazer os testes com a qtde de cedulas de cada tipo, e se nao tiver a qtde disponivel dereva emitir uma mensagem.
Fiz a logica e o codigo fonte, mas está dando erro. Poderiam me ajudar com este erro. O erro é:java.lang.NoClassDefFoundError: CaixaEletronico
Exception in thread “main” .
Outro problema é o metodo verificaCedula, está dando erro.

abaixo o codigo fonte:

import javax.swing.<em>;

import java.lang.</em>;

import java.awt.*;

import java.applet.*;

public class CaixaEletronico{

int cedulas[] = new int [4];
String notas50;
String notas20;
String notas10;
String notas5;
int N50;
int N20;
int N10;
int N5;
int R50;
int R20;
int R10;
int R5;
String cliente;
String clienteAnterior;
int valor;
String saque; 

public static void main (String args[]){
	
}

public void iniciaCaixa() {
	
	notas50 = JOptionPane.showInputDialog ("Entre com a qtde de Notas de R$ 50,00:   ");
	notas20 = JOptionPane.showInputDialog ("Entre com a qtde de Notas de R$ 20,00:   "); 
	notas10 = JOptionPane.showInputDialog ("Entre com a qtde de Notas de R$ 10,00:   ");
	notas5 = JOptionPane.showInputDialog ("Entre com a qtde de Notas de R$ 5,00:   ");
	cedulas[0] = Integer.parseInt (notas50);
	cedulas[1] = Integer.parseInt (notas20);
	cedulas[2] = Integer.parseInt (notas10);
	cedulas[3] = Integer.parseInt (notas5);
}

public void cliente() {
       
cliente = JOptionPane.showInputDialog ("Nome do Cliente:   ");
clienteAnterior = cliente;

if (cliente.equalsIgnoreCase(clienteAnterior))
		System.out.println("Olá Cliente:  "+cliente);
      
}




public int verificaCedula() {
        
  // falta condição de parada
   
    
   saque = JOptionPane.showInputDialog ("Digite o valor que deseja sacar:   ");
   valor = Integer.parseInt (saque);
   
   if ((valor % 5) == 0){
     while (valor != 0){	
         N50 = valor % 50;
   		 if ((cedulas[0] != 0) && (N50 <= cedulas[0])){
		     cedulas[0] = cedulas[0] - N50;
   		 }else{
   		    N50 = N50 - cedulas[0];
   		    R50 = valor / 50;
   		    valor = R50 + (N50 * 50);
   		    N20 = valor % 20;
   		 }
   	 	if ((cedulas[1] != 0) && (N20 <= cedulas[1])){
	   	   cedulas[20] = cedulas[20] - N20;
   	 	}else{
   		   N20 = N20 - cedulas[1];
   	 	   R20 = valor / 20;
   	 	   valor = R20 + (N20*20);
   	 	   N10 = valor % 10;
   	 	}   
   	 	if ((cedulas[3] != 0) && (N10 <= cedulas[3])){
		   cedulas[3] = cedulas[3] - N10;
   	 	}else{
   	 	   N10 = N10 - cedulas[3];
   	 	   R10 = valor / 10;
   	 	   valor = R10 + (N10*10);
   	 	   N5 = valor % 5;
   	 	}
   	 	 if ((cedulas[4] != 0) && (N5 <= cedulas[4])){
		    cedulas[4] = cedulas[4] - N5;
   	 	 }else{
   	 	 	System.out.println("O saque não pode ser efetuado:   ");
   	 	 }
     }
   }
     else{
   	  System.out.println("O saque não pode ser efetuado:   ");
     }   
   
}

}

Criado 2 de junho de 2006
Ultima resposta 8 de jun. de 2006
Respostas 3
Participantes 3