Rabu, 12 Desember 2012

TUGAS PEMROGRAMAN JAVA KAKULATOR

sourceprogram://http://www.4shared.com/rar/ehxpolJe/EKOSATRIO_11201457_C.html
import javax.microedition.midlet.*;
import javax.microedition.lcdui.*;

public class Calcul extends MIDlet implements CommandListener  {//membuat class dengan nama class Calcul
    Display display;
    Form formcalc, formhasil, formabout;//membuat form calc,hasil about
    TextField input1, input2, output;//membuat inputan untuk kalkulator
    StringItem labelhasil, pesan;//membuat label dan pesan
    Command exit, quit, tambah, kurang, kali, bagi, selesai;//membuat perintah


    public Calcul(){
    formcalc = new Form("Kalkulator_EKOSATRIO_11201457");//membuat form baru dengan nama
    exit = new Command("Exit",Command.EXIT,0);//membuat perintah tutup

    tambah = new Command("+", Command.SCREEN,1);//membuat perintah untuk tambah
    kurang = new Command("-", Command.SCREEN,1);//membuat perintah untuk kurang
    kali = new Command("*", Command.SCREEN,1);//membuat perintah untuk kali
    bagi = new Command("/", Command.SCREEN,1);//membuat perintah untuk bagi

    formcalc.addCommand(exit);//untuk perintah tutup

    formcalc.addCommand(tambah);//untuk penjumlahan angka
    formcalc.addCommand(kurang);//untuk pengurangan
    formcalc.addCommand(kali);//untuk perkalian
    formcalc.addCommand(bagi);//untuk pembagian
    formcalc.setCommandListener(this);//terus diset semua nya biar bisa menjumlahkan angkanya

    input1 = new TextField("Input 1 :","",15,TextField.DECIMAL);//untuk pengimputan text pertama yang berisikan text field dan angka 15 berarti penempatan text dalam java mobile
    input2 = new TextField("Input 2 :","",15,TextField.DECIMAL);//untuk pengimputan text tama yang berisikan text field dan angka 15 berarti penempatan text

    formcalc.append(input1);//perintah memasukkan inputan untuk di hitung
    formcalc.append(input2);//perintah memasukkan inputan untuk di hitung


    formhasil = new Form("Kalkulator_EKOSATRIO_11201457");//menampilkan form yang di buat
    selesai = new Command("Selesai", Command.SCREEN,1);//untuk mengakhir i program
    quit = new Command("Quit",Command.EXIT,0);//untuk mengakhiri menutup

    formhasil.addCommand(quit);
    formhasil.addCommand(selesai);
    formhasil.setCommandListener(this);

    labelhasil = new StringItem(null, "Hasil :\n");
    formhasil.append(labelhasil);
    output = new TextField("","",15,TextField.UNEDITABLE);
    formhasil.append(output);
    }


public void startApp() {

        display = Display.getDisplay(this);
        display.setCurrent(formcalc);


    }

public void pauseApp() {
    }

public void destroyApp(boolean unconditional) {

    }

public void commandAction(Command c, Displayable d) {
if(c==exit){
destroyApp(false);
notifyDestroyed();
}
else if (c==selesai){
display.setCurrent(formcalc);
}
else if(c==quit){
destroyApp(false);
notifyDestroyed();
}
else
{
double hasil;
double a1 = Double.parseDouble(input1.getString());//membuat perintah untuk pemanggilan data
double a2 = Double.parseDouble(input2.getString());//membuat perintah untuk pemanggilan data
//perintah untuk kondisi yang terpenuhi
if (c==tambah){
hasil = a1 + a2;
}
else if (c==kurang){
hasil = a1 - a2;
}
else if (c==kali){
hasil = a1 * a2;
}
else if (c==bagi){
hasil = a1 / a2;
}
else {
hasil = 0;
}
String akhir = Double.toString(hasil);
if (akhir.length()<=15)
output.setString(akhir);
else output.setString(akhir.substring(0,15));
display.setCurrent(formhasil);

    }
}
}

sourceprogram://http://www.4shared.com/rar/ehxpolJe/EKOSATRIO_11201457_C.html