A bug é o seguinte subtração (calculaSubtracao() ) acontece o seguinte
digito 12
09:36:57,255 INFO [Tela ] 1° valor 12.0
valor inserido no calculaSubtração( 12 );
09:36:57,255 INFO [EspressoesAritimetica] calculando subtração…
09:36:57,255 INFO [EspressoesAritimetica] resultado 0.0
confere o resultado inicial q é zero. até aqui ok
09:36:57,255 INFO [Tela ] 12.0
confere o resultado, agora 12 // 0-12
09:37:19,866 INFO [Tela ] 1° valor 6.0
valor inserido no calculaSubtração( 6);
09:37:19,866 INFO [EspressoesAritimetica] calculando subtração…
09:37:19,866 INFO [EspressoesAritimetica] resultado 12.0
confere o resultado, 12
09:37:19,866 INFO [Tela ] -6.0
confere o resultado, agora -6
09:37:32,352 INFO [Tela ] 1° valor 6.0
valor inserido no calculaSubtração( 6);
09:37:32,352 INFO [EspressoesAritimetica] calculando subtração…
09:37:32,352 INFO [EspressoesAritimetica] resultado -6.0
confere o resultado -6 // ops, :shock: (- 6 - 6) =12 e deveria ser zero :?:
09:37:32,352 INFO [Tela ] 12.0
confere o resultado, agora 12 e não Zero…
// uma classe
private double resultado;
public double calcularsubtacao(double valor1){
logger.info(“calculando subtração…”);
logger.info("resultado "+this.resultado);
return this.resultado=-(this.resultado-valor1);
}
/// outra classe
public void actionPerformed(ActionEvent e){
for ( {int i = 0; i < nBotaoNumerico; i++ )
…
if(i==1){
valor1=Double.parseDouble(campoTxt.getText());
campoTxt.setText(null);
ponto=false;
logger.info("1° valor "+valor1);
formula.calcularsubtacao(valor1);
logger.info(formula.getResultado());
}
…