Implementando codigo[resolvido]

10 respostas
wesleysilva

Ola galera to tentando implementar meu codigo aqui, estou tentando usar o default com while como vcs podem ver no meu codigo, mas esta com um erro alguem pode
me ajudar a resolve-lo.

Grato.
import java.util.Scanner;

public class Caixa_Eletronico {
	public static void main(String args[]) {
		Scanner leitor = new Scanner(System.in);

		int iOpcao;
		float fsaldo = 0;

		System.out.println("Digite o nome do cliente");
		String snome = leitor.next();

		System.out.println("Digite o numero da agencia");
		String sagencia = leitor.next();

		System.out.println("Digite o nome do conta");
		String sconta = leitor.next();

		System.out.println("Digite qual operação deseja realizar:\n"
				+ "(1)Para Depositar\n(2)Para sacar\n(3)Para sair");
		iOpcao = leitor.nextInt();

		while (iOpcao!=3) 
		{
		if(iOpcao==1) 
		{
			System.out.println("Digite valor a ser depositado");
			double ddeposito = leitor.nextDouble();
			fsaldo += ddeposito;
			break;
		}
		if(iOpcao==2) 
		{
			System.out.println("Digite valor a ser sacado");
			double dsaque = leitor.nextDouble();
			fsaldo -= dsaque;
			break;
		}
		if(iOpcao==3) 
		{
			System.exit(0);
			
		}
			System.out.println("Digite qual operação deseja realizar:\n"+ "(1)Para Depositar\n(2)Para sacar\n(3)Para sair");
			iOpcao = leitor.nextInt();
		
		default:
			System.out.println("Este numero e invalido para esse nesse menu!");
			break;
		}
		System.out.println("Nome do cliente:\n" + snome + "\n"+ "Numero da agencia:\n" + sagencia + "\n"+ "Numero da conta:\n" + sconta + "\n" + "Saldo:\n" + "R$"
				+ fsaldo + "");
		

		
	}
}

10 Respostas

drsmachado

Você tem certeza que está fazendo a coisa certa?
Assim, default não seria para usar com o switch???

wesleysilva

sim amigo fiz com swith e deu certo, minha duvida e se tem algum metodo q da pra usar com while tmb sbe algum codigo!

drsmachado
Vamos lá... 1 - Sabe qual o motivo pelo qual o switch / case foi criado? Para evitar situações como esta
if(a == 1){

}else if(a == 2){

}else if(a == 3){

}else if(a == 4){

}else{

}
Percebeu algo? Cada case é um if (ou else if). E o default? É o else (sem if).

Captou?

wesleysilva

humm blz, bom entao nao da msm ne pra implementar meu codigo com while e default?

wesleysilva

fiz um com switch mas nao da dando certo o retorno do menu intende tem q retorna qndo o usuario termina a operaçao, olha meu codigo ai

import java.util.Scanner;

public class Caixa_Eletronico {
	public static void main(String args[]) {
		Scanner leitor = new Scanner(System.in);

		int iOpcao;
		float fsaldo = 0;

		System.out.println("Digite o nome do cliente");
		String snome = leitor.next();

		System.out.println("Digite o numero da agencia");
		String sagencia = leitor.next();

		System.out.println("Digite o nome do conta");
		String sconta = leitor.next();

		System.out.println("Digite qual operação deseja realizar:\n"
				+ "(1)Para Depositar\n(2)Para sacar\n(3)Para sair");
		iOpcao = leitor.nextInt();

		switch (iOpcao) 
		{
		case 1: {
			System.out.println("Digite valor a ser depositado");
			double ddeposito = leitor.nextDouble();
			fsaldo += ddeposito;
			break;
		}
		case 2: {
			System.out.println("Digite valor a ser sacado");
			double dsaque = leitor.nextDouble();
			fsaldo -= dsaque;
			break;
		}
		case 3: {
			System.exit(0);
		}

			System.out.println("Digite qual operação deseja realizar:\n"
					+ "(1)Para Depositar\n(2)Para sacar\n(3)Para sair");
			iOpcao = leitor.nextInt();			
		default:
			System.out.println("Este numero e invalido para esse nesse menu!");
			break;
		}
		System.out.println("Nome do cliente:\n" + snome + "\n"
				+ "Numero da agencia:\n" + sagencia + "\n"
				+ "Numero da conta:\n" + sconta + "\n" + "Saldo:\n" + "R$"
				+ fsaldo + "");
		

		
	}
}
drsmachado

Você tem um leve problema com entrelinhas…
Mas, se é isto que espera para colocar o tópico como [resolvido],

NÃO!

drsmachado

Dentro do switch você não pode ter coisas assim

case 3: {  
            System.exit(0);  
        }  
  
            System.out.println("Digite qual operação deseja realizar:\n"  
                    + "(1)Para Depositar\n(2)Para sacar\n(3)Para sair");  
            iOpcao = leitor.nextInt();            
        default:  
            System.out.println("Este numero e invalido para esse nesse menu!");  
            break;  
        }

Toda parte lógica precisa estar em um case ou no default.

wesleysilva

me ajude nesse ultimo codigo ai irmao o menu tem q retornar

drsmachado

Já ajudei.
Te dei o caminho, agora, andar por você, só você mesmo.

RenanRosa

Antes de tudo, O título do tópico está nenhum pouco lógico.
Procure criar tópicos onde o título já expressa sua dúvida.

Criado 26 de maio de 2011
Ultima resposta 26 de mai. de 2011
Respostas 10
Participantes 3