import javax.microedition.midlet.*;
import javax.microedition.lcdui.*;
public class Main extends MIDlet implements CommandListener {
public Display display;
private Form fmMain1;
private Form fmMain2;
private TextField texta;
private TextField textb;
private TextField textc;
public StringItem kq1;
public StringItem kq2;
private Command cmExit;
private Command cmTinh;
public Command cmBack;
public Main(){
display = Display.getDisplay(this);
fmMain1 = new Form("Giair Phương trình bậc 2");
fmMain2 = new Form("Nghiệm của Phương trình");
texta = new TextField("Nhap a:","",15,TextField.DECIMAL);
textb = new TextField("Nhap b:","",15,TextField.DECIMAL);
textc = new TextField("Nhap c:","",15,TextField.DECIMAL);
//StringItem được dùng để hiển thị một nhãn hay chuỗi văn bản
kq1 = new StringItem("","");
kq2 = new StringItem("","");
cmExit = new Command("Thoát",Command.EXIT,1);
cmTinh = new Command("Tinh",Command.OK,1);
cmBack = new Command("Trở lại",Command.BACK,1);
fmMain1.addCommand(cmExit);
fmMain1.addCommand(cmTinh);
fmMain1.append(texta);
fmMain1.append(textb);
fmMain1.append(textc);
fmMain1.setCommandListener(this);
fmMain2.addCommand(cmExit);
fmMain2.addCommand(cmBack);
fmMain2.append(kq1);
fmMain2.append(kq2);
fmMain2.setCommandListener(this);
}
public void giaipt(int hsa,int hsb,int hsc){
int delta;
delta = hsb*hsb - 4*hsa*hsc;
float x1,x2;
if(delta>0) {
x1=(float)(-hsb+(Math.sqrt(delta))/(2*hsa));
x2=(float)(-hsb-(Math.sqrt(delta))/(2*hsa));
kq1.setText("x1="+x1);
kq2.setText("x2="+x2);
}
else {
if(delta==0){
x1=x2=-hsb/(2*hsa);
kq1.setText("Phương trình có 1 nghiệm chung: ");
kq2.setText("x1=x2= " +x1);
}
else {
kq1.setText("Phương trình Vô Nghiệm");
kq2.setText("");
}
}
}
public void startApp() {
display.setCurrent(fmMain1);
}
public void pauseApp() {
}
public void destroyApp(boolean unconditional) {
}
public void commandAction(Command c,Displayable s){
if(c == cmTinh){
if(texta.getString().compareTo("")==0||textb.getString().compareTo("")==0||textc.getString().compareTo("")==0){
kq1.setText("Bạn chưa nhập đủ, hãy nhập lại");
}
else
{
int hsa,hsb,hsc,hsd,hse,hsf;
hsa =Integer.parseInt(texta.getString());
hsb =Integer.parseInt(textb.getString());
hsc =Integer.parseInt(textc.getString());
giaipt(hsa,hsb,hsc);
}
display.setCurrent(fmMain2);
}
if(c == cmExit){
destroyApp(false);
notifyDestroyed();
}
if(c == cmBack){
display.setCurrent(fmMain1);
}
}
}