public class Calculadora extends javax.swing.JFrame {
int numero1;
int numero2;
int resultado;
String operacao;
int botao;
public Calculadora() {
initComponents();
}
private void jbotao15ActionPerformed(java.awt.event.ActionEvent evt) {
switch(operacao){
case "+":
resultado = numero1+botao;
jTextField1.setText(String.valueOf(resultado));
break;
case "-":
resultado = numero1-botao;
jTextField1.setText(String.valueOf(resultado));
break;
case "*":
resultado = numero1*botao;
jTextField1.setText(String.valueOf(resultado));
break;
case "/":
resultado = numero1/botao;
jTextField1.setText(String.valueOf(resultado));
break;
default:
System.out.println("");
break;
}
Nas calculadoras, geralmente existem os seguintes botões/teclas:
1 - MR (Memory Recovery): exibe o valor atualmente na memória;
2 - MC (Memory Clear): apaga, limpa a memória da calculadora;
3 - MS (Memory Save): salva um valor na memória;
4 - M+ (Memory Add): adiciona um valor (não negativo) na memória da calculadora. Por padrão a memória vem inicializada com 0 (zero);
5 - M- (Memory Subtract): adiciona um valor (não positivo) na memória. Por padrão a memória vem inicializada com 0 (zero);
Logo, você deve reproduzir essas teclas na sua calculadora.
Obrigado, mas não é isso que eu quero não, eu tenho uma calculadora, eu digito o 1 e depois o somar 5, o resultado da 6 certinho , o problema que ele tá fazendo assim 15 ? como faço para evitar isso ?
Está aparecendo no visor 1 e 5? Basta colocar o operador entre os números. Quando acionar o botão de igual, apagar os operandos e mostrar o resultado, como uma calculadora faria.
1 curtida
mas qual é o comando que eu tenho que chamar lá ?
1 - Digitou a parcela “1” : mostra no visor;
1
2 - Digitou o operador “+”: mostra no visor;
1 +
3 - Digitou a parcela 2: mostra no visor;
1 + 5
4 - Teclou “=”
4.1 - Apaga os dados no visor;
4.2 - Mostra a soma.
Ou seja, vá concatenado o que for sendo digitado, exceto o sinal de igual. Não consegue implementar isso? Essa é a sua questão? Se for, não é um só um ‘comando’, mas vários, dentro de um ou mais métodos.
1 curtida
Obrigado ai , se tá me dando aula de lógica , mas valeu a intenção ai kkkkkk
Pôxa, Java nem tem comandos…
Como é que está o seu código?
Consegue descrever verbalmente o que é pra acontecer ao pressionar as teclas?
1 curtida
é uma coisa simples que eu não estou dando conta. 1 + 8 = 9, só que ele tá fazendo assim 18 ?
Posta o seu código.
- O que você faz ao pressionar
1
?
- O que você faz ao pressionar
+
?
- O que você faz ao pressionar
8
?
- O que você faz ao pressionar
=
?
Como é que funciona uma “calculadora de açougueiro”?
-
ao pressionar qualquer tecla numérica, vai concatenando o número no display
-
ao pressionar qualquer operação diferente da igualdade, armazena na memória o valor do número que está no display e armazena a operação a ser executada
-
ao pressionar qualquer tecla numérica, vai concatenando o número no display
-
ao pressionar a operação de igualdade, executa a operação armazenada utilizando o número armazenado na memória e o número atual no display
1 curtida
Pra gente conseguir entender melhor seu código renomeia os botões para o nome equivalente a ele, exemplo jBNumero1, jBResultado, jBSoma, etc. Depois posta aqui todo o código fonte, pois você postou apenas um pedaço que não da pra gente saber quando ele está sendo chamado. Outra coisa que pode estar acontecendo é que quando você coloca o mais na tela você deixa o valor de operação no +, então como no resultado você não limpa esse valor, sempre que você for clicando no igual ele vai continuar somando dobrando o número.