Boa noite,
Sou novo na programação e fazer uma calculadora básica é moleza, o que não estou conseguindo é fazer uma com uma entrada, que armazene na memória o 1º numero digitado e depois venha fazer a operação com o 2º digitado e o resultado dos mesmos venha fazer mais uma operação com outro numero e assim por diante, tudo em uma só entrada, como uma calculadora verdadeira.
até agora fiz isso…
arquivo principal calculadora.java
import javax.microedition.lcdui.Command;
import javax.microedition.lcdui.Display;
import javax.microedition.lcdui.Form;
import javax.microedition.lcdui.TextField;
import javax.microedition.midlet.MIDlet;
public class calculadora extends MIDlet {
private Form form;
public calculadora() {
form = new Form("Calculadora");
TextField n = new TextField("", "", 10, TextField.NUMERIC);
form.append(n);
Command s = new Command("Sair", Command.EXIT,1);
form.addCommand(s);
Command soma = new Command("Soma", Command.OK,1);
form.addCommand(soma);
Command subtrai = new Command("Subtrai", Command.OK,1);
form.addCommand(subtrai);
Command multiplica = new Command("Multiplica", Command.OK,1);
form.addCommand(multiplica);
Command divide = new Command("Divide", Command.OK,1);
form.addCommand(divide);
Command result = new Command("Resultado", Command.OK,1);
form.addCommand(result);
form.setCommandListener(new calcula(this));
}
protected void destroyApp(boolean b){
}
protected void pauseApp() {
}
protected void startApp(){
Display d = Display.getDisplay(this);
d.setCurrent(form);
}
}
agora o calcula.java
import javax.microedition.lcdui.Command;
import javax.microedition.lcdui.CommandListener;
import javax.microedition.lcdui.Displayable;
import javax.microedition.lcdui.Form;
import javax.microedition.lcdui.TextField;
public class calcula implements CommandListener {
private calculadora calcu;
private int num2;
public calcula(calculadora cal) {
calcu = cal;
}
public int getNum2() {
return num2;
}
public void setNum2(int num2) {
this.num2 = num2;
}
public void commandAction(Command c, Displayable d) {
if (c.getLabel().equals("Sair")) {
calcu.destroyApp(false);
calcu.notifyDestroyed();
} else if (c.getLabel().equals("Soma")){
Form f = (Form) d;
TextField a = (TextField) f.get(0);
String aa = a.getString();
int num1 = Integer.parseInt(aa);
num2 = num1;
num1 = num2 + num2;
String s = String.valueOf(num1);
a.setString(s);
} else if (c.getLabel().equals("Subtrai")){
}else if (c.getLabel().equals("Multiplica")){
}else if (c.getLabel().equals("Divide")){
}else if (c.getLabel().equals("Resultado")){
Form f = (Form) d;
TextField a = (TextField) f.get(0);
String aa = a.getString();
a.setString(aa);
}
}
}
Se puderem me ajudar, ficarei grato!