Alguem pode me dizer o que estou fazendo de errado neste programa?

10 respostas
crackebr

package PacoteEstudo;

import javax.swing.JOptionPane;

public class operacoes {

public static void main(String arg[]){
    float num1,num2,result;
    int operacao;

    num1 = Float.parseFloat(JOptionPane.showInputDialog("Digite o primeiro numero"));
    num2 = Float.parseFloat(JOptionPane.showInputDialog("Digite o segundo numero"));
    operacao = Integer.parseInt(JOptionPane.showInputDialog("Digite 1 para somar\nDigite 2 para subtrair"));
    
    switch(operacao)
    {
        case 1:
    result = num1+num2;
        break;
        
        case 2:
    result = num1-num2;
        break;
        
        default:
    JOptionPane.showMessageDialog(null, "Comando Invalido!!");
        break;
    }

    JOptionPane.showMessageDialog(null, result);

}

}

10 Respostas

ellison

eae blz ?
tipo…

1 - Quando escrever código escreva entre a tag code pra ficar formatado bunitinho :smiley:
2 - Qual é o problema ? o que está acontecendo com esse código ? Alguma mensagem de erro ?

Josemar_Jobs

É só inicializar o result

result=0;
G

Inicialize as variaveis!

float num1,num2,result; int operacao;

Elas estão dentro de um método!!!

crackebr

ellison’:
eae blz ?
tipo…

1 - Quando escrever código escreva entre a tag code pra ficar formatado bunitinho :smiley:
2 - Qual é o problema ? o que está acontecendo com esse código ? Alguma mensagem de erro ?

package PacoteEstudo;

import javax.swing.JOptionPane;

public class operacoes {

    public static void main(String arg[]){
        float num1,num2,result;
        int operacao;

        num1 = Float.parseFloat(JOptionPane.showInputDialog("Digite o primeiro numero"));
        num2 = Float.parseFloat(JOptionPane.showInputDialog("Digite o segundo numero"));
        operacao = Integer.parseInt(JOptionPane.showInputDialog("Digite 1 para somar\nDigite 2 para subtrair"));
        
        switch(operacao)
        {
            case 1:
        result = num1+num2;
            break;
            
            case 2:
        result = num1-num2;
            break;
            
            default:
        JOptionPane.showMessageDialog(null, "Comando Invalido!!");
            break;
        }

        JOptionPane.showMessageDialog(null, result);
    
    }
}

Desculpa n ter usado a tag n tinha visto e o problema que estou tendo com esse programa eh q o switch case passa direto pro default msmo eu digitando 1 ou 2.
Grato.

Rafael_Marques1
import javax.swing.JOptionPane;


public class Teste1 {

	public static void main(String [] args) {
		 float num1,num2,result = 0;  
		         int operacao;  
		   
		         num1 = Float.parseFloat(JOptionPane.showInputDialog("Digite o primeiro numero"));  
		         num2 = Float.parseFloat(JOptionPane.showInputDialog("Digite o segundo numero"));  
		         operacao = Integer.parseInt(JOptionPane.showInputDialog("Digite 1 para somar\nDigite 2 para subtrair"));  
		           
		         switch(operacao)  
		         {  
		             case 1:  
		         result = num1+num2;  
		             break;  
		               
		             case 2:  
		         result = num1-num2;  
		             break;  
		               
		             default:  
		         JOptionPane.showMessageDialog(null, "Comando Invalido!!");  
		             break;  
		         }  
		   
		         JOptionPane.showMessageDialog(null, result);  
	}
	
}

era só inicializar o result...

variáveis dentro de métodos não recebem valor padrão....

abraço ;)

crackebr
ceb10n:
import javax.swing.JOptionPane;


public class Teste1 {

	public static void main(String [] args) {
		 float num1,num2,result = 0;  
		         int operacao;  
		   
		         num1 = Float.parseFloat(JOptionPane.showInputDialog("Digite o primeiro numero"));  
		         num2 = Float.parseFloat(JOptionPane.showInputDialog("Digite o segundo numero"));  
		         operacao = Integer.parseInt(JOptionPane.showInputDialog("Digite 1 para somar\nDigite 2 para subtrair"));  
		           
		         switch(operacao)  
		         {  
		             case 1:  
		         result = num1+num2;  
		             break;  
		               
		             case 2:  
		         result = num1-num2;  
		             break;  
		               
		             default:  
		         JOptionPane.showMessageDialog(null, "Comando Invalido!!");  
		             break;  
		         }  
		   
		         JOptionPane.showMessageDialog(null, result);  
	}
	
}

era só inicializar o result...

variáveis dentro de métodos não recebem valor padrão....

abraço ;)

O problema não é no resultado e sim no switch q so esta aparecendo comando invalido msmo eu digitando um numero valido, so q n estou conseguindo resolver isso...

Rafael_Marques1

vc testou o codigo acima?!

pq aqui funcionou perfeitamente :wink:

crackebr

ceb10n:
vc testou o codigo acima?!

pq aqui funcionou perfeitamente ;)

ahh funcionou msmo, vlw e desculpa ai

pedroroxd

eh soh inicializar o result msmo…
E se sua dúvida foi resolvida, vá ao primeiro post, clica em editar, e acrescente [RESOLVIDO] no título do post !

Magno_LC

pedroroxd:
eh soh inicializar o result msmo…
E se sua dúvida foi resolvida, vá ao primeiro post, clica em editar, e acrescente [RESOLVIDO] no título do post !

:arrow:

Criado 28 de fevereiro de 2010
Ultima resposta 28 de fev. de 2010
Respostas 10
Participantes 7