assalamualikum wr.wb , pada kesempatan ini kali ini saya membuat aplikasi tentang konversi suhu dimana bisa menghitung suhu sperti celcius, farenheit, dan rheamur maupun sebaliknya dan program ini berbasis J2ME atau Java Mobile . berikut ini adalah print screen dari program ini dan source codenya pula .
1.
(a) printscreen
(b) printscreen
2.source code
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 asus
*/
public class LatihanPertama extends MIDlet implements CommandListener {
Display disp;
Form frmInput, frmHasil;
StringItem strCelcius, strFahrenheit, strRheamur, strHasil, strHasil2;
TextField txtCelcius, txtFahrenheit, txtRheamur;
Command cmdExit, cmdHitung, cmdKembali;
public LatihanPertama() {
frmInput = new Form("Input Satuan Suhu");
frmHasil = new Form("Hasil");
strCelcius = new StringItem("", "Celcius (0-100)", StringItem.PLAIN);
txtCelcius = new TextField("", "", 30, TextField.NUMERIC);
strFahrenheit = new StringItem("", "Fahrenheit (32-212)", StringItem.PLAIN);
txtFahrenheit = new TextField("", "", 30, TextField.NUMERIC);
strRheamur = new StringItem("", "Reamur (0-80)", StringItem.PLAIN);
txtRheamur = 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(strFahrenheit);
frmInput.append(txtFahrenheit);
frmInput.append(strRheamur);
frmInput.append(txtRheamur);
frmInput.addCommand(cmdExit);
frmInput.addCommand(cmdHitung);
frmInput.setCommandListener(this);
}
public void startApp() {
if (disp == null) {
disp = Display.getDisplay(this);
disp.setCurrent(frmInput);
}
}
public void pauseApp() {
}
public void destroyApp(boolean unconditional) {
}
public void commandAction(Command c, Displayable d) {
if(d == frmInput){
if(c == cmdHitung){
if(!txtCelcius.getString().equals("")){
hitungCelcius();
}
else if(!txtFahrenheit.getString().equals("")){
hitungFahrenheit();
}
else if(!txtRheamur.getString().equals("")){
hitungRheamur();
}
}else if(c==cmdExit){
destroyApp(true);
notifyDestroyed();
}
}else{
if(c == cmdKembali){
disp.setCurrent(frmInput);
}
}
}
public void hitungCelcius(){
frmHasil = new Form("Hasil");
int celc = Integer.parseInt(txtCelcius.getString());
int hasilR = (4*celc/5);
int hasilF = (9*celc/5+32);
strHasil = new StringItem("", "",StringItem.PLAIN);
strHasil.setText("C->F = "+hasilF);
strHasil2 = new StringItem("", "",StringItem.PLAIN);
strHasil2.setText("C->R = "+hasilR);
cmdKembali = new Command("Kembali", Command.BACK, 1);
frmHasil.append(strHasil);
frmHasil.append(strHasil2);
frmHasil.addCommand(cmdKembali);
frmHasil.setCommandListener(this);
disp.setCurrent(frmHasil);
}
private void hitungFahrenheit() {
frmHasil = new Form("Hasil");
int fahr = Integer.parseInt(txtFahrenheit.getString());
int hasilC = (5*(fahr-32)/9);
int hasilR = (4*(fahr-32)/9);
strHasil = new StringItem("", "",StringItem.PLAIN);
strHasil.setText("F->C = "+hasilC);
strHasil2 = new StringItem("", "",StringItem.PLAIN);
strHasil2.setText("F->R = "+hasilR);
cmdKembali = new Command("Kembali", Command.BACK, 1);
frmHasil.append(strHasil);
frmHasil.append(strHasil2);
frmHasil.addCommand(cmdKembali);
frmHasil.setCommandListener(this);
disp.setCurrent(frmHasil);
}
private void hitungRheamur() {
frmHasil = new Form("Hasil");
int ream = Integer.parseInt(txtRheamur.getString());
int hasilC = (5*ream/4);
int hasilF = (9*ream/4)+32;
strHasil = new StringItem("", "",StringItem.PLAIN);
strHasil.setText("R->C = "+hasilC);
strHasil2 = new StringItem("", "",StringItem.PLAIN);
strHasil2.setText("R->F = "+hasilF);
cmdKembali = new Command("Kembali", Command.BACK, 1);
frmHasil.append(strHasil);
frmHasil.append(strHasil2);
frmHasil.addCommand(cmdKembali);
frmHasil.setCommandListener(this);
disp.setCurrent(frmHasil);
}
}
kekurangan dari program ini adalah :
*tidak bisa menghitung yang lain selain suhu tersebut
kelebihan dari program ini adalah :
*bisa menghitung suhu tersebut dengan cepat
sekian dari program saya mohon maaf bila terdapat kekurangan atau kesalahan wassalamualaikum wr.wb