Cấp bậc tác giả:

JAVA

Giải Phương Trình Bậc 2

Được viết bởi QuangIT ngày 14/09/2012 lúc 04:48 PM
Đề bài: Viết chương trình J2ME đơn giản giải phương trình bậc 2, nhập a, b, c và tính toán xử lý sự kiện
  • 0
  • 13232

Giải Phương Trình Bậc 2

Đề bài: Viết chương trình J2ME đơn giản giải phương trình bậc 2, nhập a, b, c và tính toán xử lý sự kiện


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);

       }

    }

}

Nguồn bài viết: Dngaz.com

BÌNH LUẬN BÀI VIẾT

Bài viết mới nhất

LIKE BOX

Bài viết được xem nhiều nhất

HỌC HTML