Escolar Documentos
Profissional Documentos
Cultura Documentos
Exercícios
1. Faça as classes de um sistema bancário. O sistema necessita representar 2 tipos de contas. Crie as
classes e faça o diagrama de classes com os atributos e métodos.
O Banco possui dois tipos de conta:
Conta Corrente e Conta Poupança.
Atributos:
Conta Corrente tem: Agencia, nrConta, Saldo, Nome do Titular, Limite;
Conta Poupança: Agencia, nrConta, Saldo, Nome do Titular, rendimento;
O programa deverá rodar em loop, até o usuário digitar a letra “s” para sair.
Crie métodos para cada uma das ações do menu.
Faça de preferência usando métodos com passagem de argumentos.
De preferência faça toda a interação com o usuário (principalmente a leitura de dados no void main() da
classe Principal).
Fazer somente os itens 1,2,3,4 e s.
Use:
Integer.parseInt(“String”), que converte uma String em inteiro e
Double.parseDouble(“String”), que converte uma String em double
OBS: Faça o diagrama de classe (no paint ou no ObjectiAid). Copie e cole o diagrama e o código fonte
Desafio:
Classe Conta
package aula17banco;
public Conta() {
super();
}
public Conta(String agencia, String nr_Conta, double saldo, String nomeTitular, double
depositar, double sacar) {
super();
this.agencia = agencia;
this.nr_Conta = nr_Conta;
this.saldo = saldo;
this.nomeTitular = nomeTitular;
this.depositar = depositar;
this.sacar = sacar;
STEP Computer Academy
Classe Corrente
STEP Computer Academy
public Corrente() {
super(); // super é o construtor do pai
}
Classe Poupança
package aula17banco;
public Poupanca() {
super();
}
Classe Principal
package aula17banco;
import java.util.Scanner;
do {
System.out.println("Menu:");
System.out.println("1 - Cadastrar Conta Corrente.");
System.out.println("2 - Cadastrar Poupança.");
System.out.println("3 - Exibir dados da Conta Corrente.");
System.out.println("4 - Exibir dados da Poupança.");
System.out.println("5 - Depositar na Conta Corrente.");
System.out.println("6 - Depositar na Poupança.");
System.out.println("7 - Sacar na Conta Corrente.");
System.out.println("8 - Sacar na Poupança.");
System.out.println("9 - Aumentar o limite da Conta Corrente.");
System.out.println("10 - Aplicar rendimento da Poupança.");
System.out.println("s - Sair.");
op = ler.nextLine();
switch (op) {
STEP Computer Academy
break;
}
case "2": {
p = new Poupanca();
break;
}
case "3": {
if (cc == null) {
System.out.println("Não há Conta Corrente cadastrada");
} else {
System.out.println("A agência cadastrada é " +
cc.getAgencia() + ".");
System.out.println("O número da conta cadastrado é " +
cc.getNr_Conta() + ".");
System.out.println("O saldo cadastrado é " + cc.getSaldo() +
".");
System.out.println("O nome do titular da conta cadastrado é
" + cc.getNomeTitular() + ".");
System.out.println("O limite cadastrado é " + cc.getLimite()
+ ".");
}
break;
}
case "4": {
STEP Computer Academy
break;
}
case "5": {
if (cc == null) {
System.out.println("Não há Conta Corrente cadastrada");
} else {
System.out.println("Digite o valor desejado para
deposito.");
cc.setDepositar(Double.parseDouble(ler.nextLine()));
cc.setSaldo(cc.getSaldo() + cc.getDepositar());
System.out.println("O novo saldo é: R$" + cc.getSaldo() +
".");
break;
case "6": {
if (p == null) {
System.out.println("Não há Poupança cadastrada");
} else {
System.out.println("Digite o valor desejado para
deposito.");
p.setDepositar(Double.parseDouble(ler.nextLine()));
p.setSaldo(p.getSaldo() + p.getDepositar());
System.out.println("O novo saldo é: R$" + p.getSaldo() +
".");
break;
case "7": {
STEP Computer Academy
cc.setSaldo(cc.getSaldo() - cc.getSacar());
System.out.println("O novo saldo é: R$" + cc.getSaldo() +
".");
break;
case "8": {
if (p == null) {
System.out.println("Não há Poupança cadastrada");
} else {
System.out.println("Digite o valor desejado para saque.");
p.setSacar(Double.parseDouble(ler.nextLine()));
p.setSaldo(p.getSaldo() - p.getSacar());
System.out.println("O novo saldo é: R$" + p.getSaldo() +
".");
break;
case "9": {
if (cc == null) {
System.out.println("Não há Conta Corrente cadastrada");
} else {
System.out.println("Digite o valor desejado para aumentar o
limite da Conta Corrente.");
cc.setAumentarLimite(Double.parseDouble(ler.nextLine()));
cc.setLimite(cc.getLimite() + cc.getAumentarLimite());
System.out.println("O novo limite é: R$" + cc.getLimite() +
".");
break;
case "10": {
if (p == null) {
System.out.println("Não há Poupança cadastrada");
STEP Computer Academy
p.setRendimento(p.getRendimento() +
p.getAumentarRendimento());
System.out.println("O novo valor do rendimento é: R$" +
p.getRendimento() + ".");
break;
case "s":
case "S": {
System.out.println("Saindo do menu...");
break;
}
default:
System.out.println("Digite uma opção válida.");
} while (!op.equalsIgnoreCase("s"));
ler.close();