Senin, 16 Januari 2012

Tugas Konversi Suhu (JAVA)

ini adalah sebuah aplikasi untuk meng-konversi suhu.
terdapat 3 suhu. diantaranya celcius, fahrenheit dan reamur.

ini adalah tampilan awal !!
pertama masukan satuan suhu pada salah satu textfield:





dan ini adalah tampilan hasil dari konversinya :




Berikut adalah cource codenya :



/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

package hello;

import javax.microedition.lcdui.Command;
import javax.microedition.lcdui.CommandListener;
import javax.microedition.lcdui.Display;
import javax.microedition.lcdui.Displayable;
import javax.microedition.lcdui.Form;
import javax.microedition.lcdui.StringItem;
import javax.microedition.lcdui.TextField;
import javax.microedition.midlet.*;

/**
 * @author Waldi
 */
public class KonversiSuhu extends MIDlet implements CommandListener {

    Display disp;
    Form frminput, frmhasil;
    StringItem strCelcius,strFahreinheit,strreamur,strhasil;
    TextField txtCelcius, txtFahreinheit, txtreamur;
    Command cmdExit, cmdhitung, cmdkembali;

    public KonversiSuhu(){
        frminput = new Form("Input Satuan Suhu");

        strCelcius = new StringItem("" ,"Celcius", StringItem.PLAIN);
        txtCelcius = new TextField("", "", 30,TextField.NUMERIC);
        strFahreinheit = new StringItem("" ,"Fahreinheit", StringItem.PLAIN);
        txtFahreinheit = new TextField("", "", 30,TextField.NUMERIC);
        strreamur = new StringItem("" ,"Reamur", StringItem.PLAIN);
        txtreamur = new TextField("", "", 30,TextField.NUMERIC);

        cmdExit = new Command("Keluar", Command.EXIT, 0);
        cmdhitung = new Command("Hitung", Command.OK,1);

        frminput.append(strCelcius);
        frminput.append(txtCelcius);
        frminput.append(strFahreinheit);
        frminput.append(txtFahreinheit);
        frminput.append(strreamur);
        frminput.append(txtreamur);

        strCelcius = new StringItem("","ya",StringItem.PLAIN);
        strFahreinheit = new StringItem("coba","",StringItem.PLAIN);
        frminput.addCommand(cmdExit);
        frminput.addCommand(cmdhitung);
        frminput.setCommandListener((CommandListener) this);
    }

    public void startApp() {
        if(disp == null){
                disp = Display.getDisplay(this);
                disp.setCurrent(frminput);
            }
    }

    public void hitungSuhu(){
frmhasil = new Form("Hasil Konversi Suhu");
       if(!txtCelcius.getString().equals("")){
                int celcius = Integer.parseInt(txtCelcius.getString());
                int fahrenheit = ((celcius)*9/5+32);
                int reamur = (celcius*4/5);

                strhasil = new StringItem("","",StringItem.PLAIN);
                strhasil.setText("Celcius --> Fahrenheit = "+fahrenheit+"\nCelcius --> Reamur = "+reamur);

            }

       else if(!txtFahreinheit.getString().equals("")){
                int fahrenheit = Integer.parseInt(txtFahreinheit.getString());
                int celcius = ((fahrenheit-32)*5/9);
                int reamur = ((fahrenheit-32)*4/9);

                strhasil = new StringItem("","",StringItem.PLAIN);
                strhasil.setText("Fahrenheit --> Celcius = "+celcius+"\nFahrenheit --> Reamur = "+reamur);
            }

       else if(!txtreamur.getString().equals("")){
                int reamur = Integer.parseInt(txtreamur.getString());
                int celcius = ((reamur)*5/4);
                int fahrenheit = (((reamur)*9/4)+32);

                strhasil = new StringItem("","",StringItem.PLAIN);
                strhasil.setText("Reamur --> Celcius = "+celcius+"\nReamur --> Fahrenheit = "+fahrenheit);
            }

        cmdkembali = new Command("Kembali", Command.BACK, 1);
        frmhasil.append(strhasil);
        frmhasil.addCommand(cmdkembali);
        frmhasil.setCommandListener((CommandListener) this);

        disp.setCurrent(frmhasil);
    }
    public void pauseApp() {

    }

    public void destroyApp(boolean unconditional) {
    }

    public void commandAction(Command c, Displayable d){
        if(d == frminput){
            if(c == cmdhitung){
               hitungSuhu();
            }else if(c == cmdExit){
            destroyApp(true);
            notifyDestroyed();
        }
    }else{
        if(c == cmdkembali){
            disp.setCurrent(frminput);
        }
    }
    }
}


demikian tugas java ini semoga bermanfaat.
terimakasih !!
wassalamualaikum wr wb.