Pograma Banco.
Olá galera,tenho que fazer um código que simule um banco,verificar o saldo,retirar,sacar,alterar nome e endereço do usuário e etc.Bom estou com problemas na parte de alterar endereço e nome,eu fiz o código com um menu de opções,caso você escolha sacar ou depositar por primeiro e depois escolha entre alterar nome ou endereço não dá,ele ñ le a string respectiva,mas se eu escolher uma dessas opções antes de 'fazer uma transação financeira' da tudo ok(ao menos até onde testei). Procurando na internet li sobre um pequeno problema do java,que ele ñ le uma string depois de ler um int ou double, mas ñ achei uma solução que resolvesse meu código,alguém ai pode me dar uma mão?
Código principal:
package contacorrente_1;
import java.util.Scanner;
public class ContaCorrente_1 {
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
Conta var = new Conta();
System.out.println("Escolha uma das opções do menu a baixo:");
System.out.println("1 - Conferir Saldo");
System.out.println("2 - Depositar quantia");
System.out.println("3 - Retirar quantia");
System.out.println("4 - Alterar endereço");
System.out.println("5 - Alterar nome");
int op=scan.nextInt();
switch(op){
case 1:{System.out.println(var.saldo);//printa saldo
System.out.println("Deseja mais alguma coisa? 1-sim ; 2- não");//pede se quer fazer algo mais
op=scan.nextInt();
if(op==2) break;//se escolher ñ,aqui ele encerra o switch
else op=scan.nextInt();//caso contrário ele le uma opção do menu novamente
}
case 2:{var.depositar(args);System.out.println("o valor agora é "+var.saldo);
System.out.println("Deseja mais alguma coisa? 1-sim ; 2- não");
op=scan.nextInt();
if(op==2) break;
else op=scan.nextInt();
}
case 3:{var.retirar(args);System.out.println("o valor agora é "+var.saldo);
System.out.println("Deseja mais alguma coisa? 1-sim ; 2- não");
op=scan.nextInt();
if(op==2) break;
else op=scan.nextInt();
}
case 4:{var.alt_endereco(args);
System.out.println("Deseja mais alguma coisa? 1-sim ; 2- não");
op=scan.nextInt();
if(op==2) break;
else op=scan.nextInt();
}
case 5:{var.alt_nome(args);
System.out.println("Deseja mais alguma coisa? 1-sim ; 2- não");
op=scan.nextInt();
if(op==2) break;
else op=scan.nextInt();
}
}
}
}
A classe:
package contacorrente_1;
import java.util.Scanner;
public class Conta {
Scanner scan = new Scanner(System.in);
String nomecliente;
String endereco;
double saldo=0;
public void depositar(String[] args) {
System.out.println("digite um valor para depositar");
saldo=saldo+scan.nextDouble();//soma deposito ao saldo
}
public void retirar(String[] args) {
double aux;
System.out.println("Digite a quantia para retirar");
aux=scan.nextDouble();//le quantia que você deseja sacar
//confere se há saldo o suficiente para o saque
if(aux>saldo) System.out.println("você tem apenas "+saldo+" para sacar");
else saldo=saldo-aux;
}
public void alt_nome(String[] args) {
System.out.println("Digite o nome:");
nomecliente=scan.nextLine();
System.out.println(nomecliente);
}
public void alt_endereco(String[] args) {
System.out.println("Digite o endereço:");
endereco=scan.nextLine();
System.out.println(endereco);
}
}
Agradeço desde já!!
Discussão (2)
Carregando comentários...