Switch

Olá galera peço uma ajuda…
Estou escrevendo uma máquina calculadora em Java e estou tendo dificuldades para fazer o default… Quando faço ele imprime também o resultado de 0.

Manda teu switch ae fera.
E ve se colocou break em todos os cases

Coloquei break em todos os cases.
Mas continua dando mesma coisa

Inclusive no default?
Manda teu código, onde tá o switch

Mostra o código!

Bom dia Galera… ai vai o codigo

//Calculadora de operacoes aritimeticas

import java.util.Scanner;

 public class calculadora {

  public static void main(String []args){

//declarando as variaveis
double num1;
double num2;
int operador;
double resultado = 0;
    Scanner scan = new Scanner(System.in);

	/*Inserindo os valores e o operador*/

	System.out.println("Digite o Primeiro valor : ");
	 num1 = scan.nextDouble();
	
	System.out.println("Digite o Segundo Valor: ");
	 num2 = scan.nextDouble();
	
	System.out.println("Escolha a Operacao Desejada: ");
	System.out.println(" 1. Adicao");
	System.out.println(" 2. Subtracao"); 
	System.out.println(" 3. Multiplicacao");
	System.out.println(" 4. Divisao");
	 operador = scan.nextInt();
	
	
	switch (operador) {
	
	case 1: //Adição
	resultado = num1+num2;
	break;
	
	case 2: //Subtração
	resultado = num1-num2;
	break;
	
	case 3: //Multiplicação
	resultado = num1*num2;
	break; 
	
	case 4: //Divisão
	resultado = num1/num2;
	break;


default: System.out.println("Erro");


 }

System.out.println("O Resultado da operacao é : "+ resultado);



}

}
preciso de ajudar para ela calcular com parenteses

Esse código funciona! Todas as operações estão OK. Para adicionar o parênteses, procure pelo padrão de projeto Interpreter.

Tá tudo certo.
Mas coloca um break; no default também.

Gostaria de colocar uma opção para a pessoa poder sair do programa ali na parte de escolha de operador.

Tentou um valor errado?
Ele imprime mesmo o default?

Ele imprime o default sim, caso nenhuma das opçoes (1 a 4) sejam escolhidas. Mas tambem imprime o resultado, o que não deveria acontecer.

Você pode colocar nos ‘cases’ assim:

    case 1: //Adição
resultado = num1+num2;
    System.out.println("O Resultado da operacao é : "+ resultado);
    break;

    ...case 2, case 3, case 4 da mesma forma, a opção sair  e o default assim: 

   case 5: System.exit(0);

   default: System.out.println("Erro");
   break;
2 curtidas

Muito grato Jonas.
Agora estou tendo dificuldades para fazer o mesmo programa fazer operações com parentes… Pode me dar umas dicas?

Leandro Tem algum link de onde eu possa obter essa informação bem clara? Se possível com exemplos?,

Onde você quer usar parenteses? Num calculo simples assim, você não precisa usar a prioridade de operadores. Daria o mesmo fazer com parenteses ou sem.

Assim: resultado = num1+num2;
ou assim: resultado = (num1+num2);

Quero dar a usuário do programa a possibilidade de fazer cálculos com parentes, podendo dar entrada pelo teclado