Calculadora estou com problemas ! SOS

3 respostas
P

O galera alguem pode me ajudar estou com problemas com uma calculadora que estou fazendo…sera que alguem pode me ajudar?

public class Calcula

{

private String numero=0;

private double numero2;

private String operacao=null;

public Calcula(){}

public String processar(String acao)

{

boolean verifica=verificaSinal(acao);

if(verificaSinal==true)

{

numero2=Double.parseDouble(numero);

operacao=acao;

return “”;

}

if(acao=="=")

if(acao=="=" && operacao!=null)

{

executar();

return numero;

}

else return numero;
if(operacao!=null)
 {  
   numero=acao;
   executar();
 }

ordena(acao);
return numero;
}

//executa as operações

private void executar()

{

double num, resultado;

num=Double.parseDouble(numero);
if(operacao=="+"){
 resultado=num+numero2;
 numero=Double.toString(resultado);
 numero2=0;
 operacao=null;
 return;
}
if(operacao=="-"){
 resultado=numero2-num;
 numero=Double.toString(resultado);
 numero2=0;
 operacao=null;
 return;
}
if(operacao=="*"){
 resultado=num*numero2;
 numero=Double.toString(resultado);
 numero2=0;
 operacao=null;
 return;
}
if(operacao=="/"){
 resultado=numero2/num;
 numero=Double.toString(resultado);
 numero2=0;
 operacao=null;
 return;
}
}

//testa os sinais

private boolean verificaSinal(String t){

if(t=="+"||t=="-"||t=="*"||t=="/"){

return true;

}

return false;

}
//contatena os numeros

private void ordena(String number)

{

numero=numero+number;

}

}

as operacoes nao quer funcionar nao sei o que é acho que o erro esta na funcao processar

3 Respostas

Leandro_Carvalho

Eu começaria por:

  • Postar isto no “Java Básico” ao invés do “Off-topic”
  • Usar as tags [ code ] [ /code ] do forum
  • Ser mais específico quanto a dúvida, quero dizer, onde está o erro afinal?

Abraços!

T

10 entre 10 javaneses já cometeram este mesmo erro: strings não se comparam com “==”, mas com equals.

Exemplo do errado:

if(operacao=="-"){

Exemplo do certo:

if(operacao.equals("-")){
P

Galera valeu mesmo

Eu ta dando uma olha no codigo pra ver se arrumava ja ta rodando .
O que o tingo disse e de dar razão == pode ser usado em refenrecias e nao em objetos.Quando estamos falando de objetos é o equals que devemos usar para comparar.

O galera tem que dar um desconto eu nao programo sempre , e o bicho ta pegando eu to fazendo certificação em redes , programando…ta uma bagunça a minha vida eu gosto mesmo é de programar mas surgiu esta oportunidade (ainda mas que é um banco que da o curso o so) e de graça nao da pra perder .

Sera que eu passo no teste É-UM ?

if(pauloCCNA instanceof Programador)

{

System.out.print("E nao sei nao mas se ta dizendo ");

}else
{

System.out.print(" Ta dificil em kkkkkkk");
   
     }
Criado 18 de setembro de 2007
Ultima resposta 20 de set. de 2007
Respostas 3
Participantes 3