Buscar

ExercicioBancoComArrayList

Esta é uma pré-visualização de arquivo. Entre para ver o arquivo original

ExercicioBanco/ExercicioBanco/AppBanco.class
public synchronized class AppBanco {
 public void AppBanco();
 public void executa();
}
ExercicioBanco/ExercicioBanco/AppBanco.ctxt
#BlueJ class context
comment0.params=
comment0.target=void\ executa()
numComments=1
ExercicioBanco/ExercicioBanco/AppBanco.java
/**
 * Write a description of class AppBanco here.
 * 
 * @author (your name) 
 * @version (a version number or a date)
 */
import java.util.Scanner;
public class AppBanco
{
 public void executa(){
 Scanner entrada = new Scanner(System.in);
 Banco banco1 = new Banco("Tabajara Bank");
 String opcao;
 do{
 System.out.println("--- MENU ---");
 System.out.println("1 - Cadastrar conta");
 System.out.println("2 - Excluir conta");
 System.out.println("3 - Consulta conta");
 System.out.println("4 - Listar Contas");
 System.out.println("5 - Depositar");
 System.out.println("6 - Transferir");
 System.out.println("0 - Sair");
 System.out.println("Informe a opção: ");
 opcao = entrada.nextLine();
 switch(opcao){
 case "0": System.out.println("Fim"); break;
 
 case "1": System.out.println("-- Cadastrar");
 System.out.println("Informe o número da conta: ");
 String tmp = entrada.nextLine();
 int numero = Integer.parseInt(tmp);
 boolean resultado = banco1.pesquisar(numero);
 if(resultado==true){
 System.out.println("Erro:Número de conta já existe no banco.");
 break;
 }
 resultado = banco1.cadastrar(numero);
 if(resultado==true) System.out.println("Conta cadastrada com sucesso");
 else System.out.println("Conta não cadastrada");
 break;
 
 case "2": System.out.println("-- Excluir conta");
 System.out.println("Informe o número da conta: ");
 tmp = entrada.nextLine();
 numero = Integer.parseInt(tmp);
 resultado = banco1.excluir(numero);
 if(resultado==true) System.out.println("Exclusão realizada com sucesso.");
 else System.out.println("Exclusão não realizada");
 break;
 
 case "3": System.out.println("-- Consultar conta");
 System.out.println("Informe o número da conta: ");
 tmp = entrada.nextLine();
 numero = Integer.parseInt(tmp);
 Conta aux = banco1.buscar(numero);
 if(aux==null){
 System.out.println("Conta não encontrada");
 break;
 }
 System.out.println(aux.toString());
 break;
 
 case "4": System.out.println("-- Listar contas");
 System.out.println(banco1);
 break;
 
 case "5": System.out.println("-- Depositar");
 System.out.println("Informe o número da conta: ");
 tmp = entrada.nextLine();
 numero = Integer.parseInt(tmp);
 aux = banco1.buscar(numero);
 if(aux==null){
 System.out.println("Conta não encontrada");
 break;
 }
 System.out.println("Informe o valor: ");
 tmp = entrada.nextLine();
 double valor = Double.parseDouble(tmp);
 resultado = aux.depositar(valor);
 if(resultado==true) System.out.println("Depósito realizado com sucesso");
 else System.out.println("Depósito não realizado");
 break;
 
 case "6": System.out.println("-- Transferir");
 System.out.println("Informe o número da conta de origem: ");
 tmp = entrada.nextLine();
 int numeroOrigem = Integer.parseInt(tmp);
 Conta origem = banco1.buscar(numeroOrigem);
 if(origem==null){
 System.out.println("Número da conta origem não encontrado.");
 break;
 }
 System.out.println("Informe o número da conta de destino: ");
 tmp = entrada.nextLine();
 int numeroDestino = Integer.parseInt(tmp);
 if(numeroOrigem==numeroDestino){
 System.out.println("Erro. As contas de origem e de destino não podem ser a mesma.");
 break;
 }
 Conta destino = banco1.buscar(numeroDestino);
 if(destino==null){
 System.out.println("Número da conta destino não encontrado.");
 break;
 }
 System.out.println("Informe o valor a transferir: ");
 tmp = entrada.nextLine();
 valor = Double.parseDouble(tmp);
 resultado = origem.transferir(valor, destino);
 if(resultado==true) System.out.println("Transferência realizada com sucesso");
 else System.out.println("Transferência não realizada");
 break;
 
 default: System.out.println("Opção inválida");
 }
 }while(!opcao.equals("0"));
 }
}
ExercicioBanco/ExercicioBanco/Banco.class
public synchronized class Banco {
 private String nome;
 private java.util.ArrayList lista;
 private int quantidade;
 public void Banco(String);
 public String getNome();
 public int getQuantidade();
 public void setNome(String);
 public boolean cadastrar(int);
 public Conta buscar(int);
 public boolean pesquisar(int);
 public boolean excluir(int);
 public String toString();
 public double calcularSaldoMedio();
}
ExercicioBanco/ExercicioBanco/Banco.ctxt
#BlueJ class context
comment0.params=nome
comment0.target=Banco(java.lang.String)
comment1.params=
comment1.target=java.lang.String\ getNome()
comment2.params=
comment2.target=int\ getQuantidade()
comment3.params=nome
comment3.target=void\ setNome(java.lang.String)
comment4.params=numero
comment4.target=boolean\ cadastrar(int)
comment5.params=numero
comment5.target=Conta\ buscar(int)
comment6.params=numero
comment6.target=boolean\ pesquisar(int)
comment7.params=numero
comment7.target=boolean\ excluir(int)
comment8.params=
comment8.target=java.lang.String\ toString()
comment9.params=
comment9.target=double\ calcularSaldoMedio()
numComments=10
ExercicioBanco/ExercicioBanco/Banco.java
/**
 * Write a description of class Banco here.
 * 
 * @author (your name) 
 * @version (a version number or a date)
 */
import java.util.ArrayList;
public class Banco
{
 private String nome;
 private ArrayList<Conta> lista;
 private int quantidade;
 
 public Banco(String nome){
 lista = new
ArrayList<Conta>(30);
 this.nome = nome;
 quantidade = 0;
 }
 public String getNome(){return nome; }
 public int getQuantidade(){ return quantidade; }
 public void setNome(String nome){
 this.nome = nome;
 }
 
 public boolean cadastrar(int numero){
 Conta nova = new Conta(numero);
 return lista.add(nova);
 }
 public Conta buscar(int numero){
 if(lista.size()==0) return null;
 for(int pos=0; pos < lista.size(); pos++){
 Conta aux = lista.get(pos);
 if(aux.getNumero()==numero) return aux;
 }
 return null;
 }
 public boolean pesquisar(int numero){
 if(lista.size()==0) return false;
 for(int pos=0; pos<lista.size(); pos++){
 Conta aux = lista.get(pos);
 if(aux.getNumero()==numero) return true;
 }
 return false;
 }
 public boolean excluir(int numero){
 //if(lista.size()==0) return false;
 Conta aux = buscar(numero);
 if(aux==null) return false;
 return lista.remove(aux);
 }
 
 
 public String toString(){
 String msg = nome + " - Quantidade de contas: " + quantidade;
 msg = msg + "\nLista de contas:\n";
 for(int pos = 0; pos<lista.size(); pos++){
 Conta aux = lista.get(pos);
 msg = msg + aux + "\n";
 }
 return msg;
 }
 
 public double calcularSaldoMedio(){
 if(lista.size()==0) return 0;
 double soma = 0;
 for(Conta aux:lista){
 soma = soma + aux.getSaldo();
 }
 return soma / lista.size();
 }
 
 
}
ExercicioBanco/ExercicioBanco/Conta.class
public synchronized class Conta {
 private double saldo;
 private int numero;
 public void Conta(int);
 public int getNumero();
 public double getSaldo();
 public boolean sacar(double);
 public boolean depositar(double);
 public boolean transferir(double, Conta);
 public String toString();
 public int inverterNumero();
 public int getDigitoVerificador();
}
ExercicioBanco/ExercicioBanco/Conta.ctxt
#BlueJ class context
comment0.params=numero
comment0.target=Conta(int)
comment1.params=
comment1.target=int\ getNumero()
comment2.params=
comment2.target=double\ getSaldo()
comment3.params=valor
comment3.target=boolean\ sacar(double)
comment4.params=valor
comment4.target=boolean\ depositar(double)
comment5.params=valor\ destino
comment5.target=boolean\ transferir(double,\ Conta)
comment6.params=
comment6.target=java.lang.String\ toString()
comment7.params=
comment7.target=int\ inverterNumero()
comment8.params=
comment8.target=int\ getDigitoVerificador()
numComments=9
ExercicioBanco/ExercicioBanco/Conta.java
public class Conta{
 private double saldo;
 private int numero;
 public Conta(int numero){
 if(numero>=100 && numero<=999)this.numero = numero;
 else this.numero = 100;
 saldo = 0;
 }
 public int getNumero(){ return numero; }
 public double getSaldo(){ return saldo; }
 public boolean sacar(double valor){
 if(valor>0 && saldo>=valor) {
 saldo = saldo - valor;
 return true;
 }
 return false;
 }
 public boolean depositar(double valor){
 if(valor>0) {
 saldo = saldo + valor;
 return true;
 }
 return false;
 }
 public boolean transferir(double valor, Conta destino){
 if(valor>0 && saldo>=valor){
 saldo = saldo - valor;
 destino.depositar(valor);
 return true;
 }
 return false;
 }
 public String toString(){ return "Numero: " + numero + "." + getDigitoVerificador() +
 " Saldo: " + saldo; }
 
 public int inverterNumero(){
 int digito1 = numero/100; //centena
 int digito2 = numero%100/10;
 int digito3 = numero%100%10;
 return digito3*100 + digito2*10 + digito1;
 }
 public int getDigitoVerificador(){
 int soma = numero + inverterNumero(); //numero somado ao seu inverso
 int digito1 = soma/100;
 int digito2 = soma%100/10;
 int digito3 = soma%100%10;
 soma = digito1 + digito2 * 2 + digito3 * 3; //digitos multiplicados pela posição
 return soma%10; //digito verificador 
 }
}
ExercicioBanco/ExercicioBanco/package.bluej
#BlueJ package file
dependency1.from=Banco
dependency1.to=Conta
dependency1.type=UsesDependency
dependency2.from=AppBanco
dependency2.to=Banco
dependency2.type=UsesDependency
dependency3.from=AppBanco
dependency3.to=Conta
dependency3.type=UsesDependency
package.editor.height=579
package.editor.width=1220
package.editor.x=50
package.editor.y=50
package.numDependencies=3
package.numTargets=3
package.showExtends=true
package.showUses=true
project.charset=UTF-8
target1.editor.height=700
target1.editor.width=900
target1.editor.x=90
target1.editor.y=70
target1.height=50
target1.name=Conta
target1.naviview.expanded=false
target1.showInterface=false
target1.type=ClassTarget
target1.width=80
target1.x=70
target1.y=10
target2.editor.height=745
target2.editor.width=1372
target2.editor.x=-3
target2.editor.y=0
target2.height=50
target2.name=AppBanco
target2.showInterface=false
target2.type=ClassTarget
target2.width=90
target2.x=180
target2.y=190
target3.editor.height=754
target3.editor.width=1040
target3.editor.x=-8
target3.editor.y=-8
target3.height=50
target3.name=Banco
target3.naviview.expanded=false
target3.showInterface=false
target3.type=ClassTarget
target3.width=80
target3.x=300
target3.y=130
ExercicioBanco/ExercicioBanco/README.TXT
------------------------------------------------------------------------
This is the project README file. Here, you should describe your project.
Tell the reader (someone who does not know anything about this project)
all he/she needs to know. The comments should usually include at least:
------------------------------------------------------------------------
PROJECT TITLE:
PURPOSE OF PROJECT:
VERSION or DATE:
HOW TO START THIS PROJECT:
AUTHORS:
USER INSTRUCTIONS:

Teste o Premium para desbloquear

Aproveite todos os benefícios por 3 dias sem pagar! 😉
Já tem cadastro?

Outros materiais