Jumat, 19 Oktober 2012

Membuat Animasi Gambar Gerak Menggunakan AWT Java


Kali ini saya akan menambahkan animasi gambar gerak pada program sebelumnya. Pada program sebelumnya hasil running program hanya seperti ini:


Tambahkan script ini pada program sebelumnya. Script ini hanya tinggal ditambahkan pada bagian pembuatan gambar awannya saja.


Thread digunakan sebagai sebuah pengontrol aliran program. Sebelumnya kita instansiasi dulu Threednya. Kemudian kita gunakan for looping agar titik koordinat x bisa bergeser ke arah kanan. Lalu kita gunakan sleep selama 50milisecond. Agar awan bisa kembali lagi ke titik semula dan bergerak lagi maka kita gunakan if kondisi.

Lebih jelasnya saya sudah tuliskan komentar pada baris program. Dengan menambahkan script ini maka awan akan bergerak ke arah matahari.

Sekian postingan kali ini, semoga bisa bermanfaat. Lebih dan kurangnya harap dimaklumi. Terimakasih J


Rabu, 17 Oktober 2012

Program gambarJava menggunakan AWT Java


Kali ini saya akan mengembangkan program awt sebelumnya.

Buat class baru bernama gambarJava, lalu extends class Panel. Buat konstruktor yang isinya setBackground dan isi warna background.

Selanjutnya buat gambar pada method paint. Untuk fillPolygon, gunakan array untuk menyimpan titik koordinatnya. Untuk lebih jelasnya saya sudah beri komentar pada baris program.







Jangan lupa tambahkan setVisible menjadi true agar window bisa tampil.

Sekian postingan kali ini, semoga bisa bermanfaat J
Lebih baik ketik ulang coding programnya daripada coding ini di copy-paste agar lebih bisa dimengerti.
Terimakasih.

[ D O W N L O A D ]



Selasa, 16 Oktober 2012

Contoh Program HelloAWT

Bagaimana cara membuat gambar, mengimport gambar dengan bahasa pemrograman java?

Kali ini saya akan memberikan contoh program yang menggunakan awt pada bahasa pemrograman Java.
Program ini menampilkan tampilan seperti berikut:


Berikut koding dari program HelloAWT:


Langkah pertama adalah meminta pewarisan sifat dari class Panel. Dan tidak lupa mengimport class dari pakage java.awt. Lalu membuat constructor yang isinya setBackground, lalu membuat method paint sebagai tempat kita membuat gambar smile, dan mencoba beberapa fungsi dari Grafik dan Frame pada Java AWT.
Lebih jelasnya bisa dilihat pada gambar dibawah ini.




Tidak lupa kita tambahkan untuk mengukur ukuran window, dan setVisible menjadi true.





Bila menemukan error pada program, coba periksa kembali. Lebih baik program ini diketik ulang bukan di copas(copy-paste) agar bisa lebih dipahami. Dari contoh program diatas semoga bisa dikembangkan menjadi program yang lebih baik lagi.

Semoga bermanfaat. Terimakasih J


Download script Java disini -----> Download file.java

AWT Dan SWING Pada Java


Kali ini saya akan menjelaskan tentang AWT dan SWING pada Java.

Fungsi dari AWT dan SWING adalah membantu pengembang dalam mendesain dan mengimplementasikan aplikasi visual yang lebih baik.
Tidak seperti beberapa komponen AWT yang menggunakan native code, keseluruhan Swing ditulis menggunakan bahasa pemrograman Java. Swing menyediakan implementasi platform-independent dimana aplikasi yang dikembangkan dengan platform yang berbeda dapat memiliki tampilan yang sama. Begitu juga dengan AWT menjamin tampilan look and feel pada aplikasi yang dijalankan pada dua mesin yang berbeda menjadi terlihat sama. Swing API dibangun dari beberapa API yang mengimplementasikan beberapa jenis bagian dari AWT. Kesimpulannya, komponen AWT dapat digunakan bersama komponen Swing.

Window Classes Fundamental
Berikut ini adalah daftar dari beberapa class penting pada kontainer yang telah disediakan oleh AWT.

Untuk mengatur ukuran window, menggunakan method setSize.
void setSize(int width, int height)
mengubah ukuran komponen ini dengan width dan height sebagai parameter.
void setSize(Dimension d)
mengubah ukuran dengan d.width dan d.height berdasar pada spesifikasi Dimension d.
Default dari window adalah not visible atau tak tampak hingga Anda mengatur visibility menjadi true. Inilah syntax untuk method setVisible.
void setVisible(boolean b)


Grafik
Beberapa method grafik ditemukan dalam class Graphic. Dibawah ini adalah daftar dari beberapa method.



Sekian dari penjelasan kali ini, sebelum memlulai ke contoh program, pahami dulu rangkuman diatas J



Minggu, 07 Oktober 2012

Program Memilih Menu Makanan


Berikut ini program memilih menu makanan menggunakan beberapa struktur kontrol pemilihan dan pengulangan pada bahasa pemrograman Java.






Sekian postingan kali ini, semoga bermanfaat.  Hanya saran, LEBIH BAIK diketik ulang dan jangan dicopas (copy-paste) agar lebih mengerti.

Keritik dan sarannya ditunggu ya.. semoga bermanfaat..
T e r i m a k a s i h J

Download script java disini ----> Download file.java

Jumat, 31 Agustus 2012

Program Kalkulator Sederhana


Program Kalkulator Sederhana

SOAL BONUS

Buatlah sebuah program dengan menggunakan bahasa java dengan  algoritma dan ketentuan berikut ini ,

Program Kalkulator Sederhana
Tools yang digunakan : Teks Editor (Notepad, Wordpad, Notepad++, Komodo, etc)


Tools yang saya gunakan kali ini sama dengan sebelumnya, yaitu NetBeans IDE 7.0.1
Ada beberapa tahap untuk menyelesaikan program tersebut, yaitu:
1.  Jangan lupa berdo’a sebelum mulai membuat program :D
2.  Buka program NetBeans IDE 7.0.1
3.  Masih pada project yang sama dengan sebelumnya, lalu buat pakage dan beri nama pakage tersebut. Contohnya: soalBonus.
4.  Dalam pembuatan program  ini saya hanya membuat 1 class. Dengan nama class kalkulatorSedrhana.class

Berikut adalah coding yang saya buat pada 2 class tersebut.

kalkulatorSedrhana.java

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

    /**
     *
     * @author HP
     */
    import java.util.Scanner;
    public class kalkulatorSederhana {
            public static void main(String[] args) {

                Scanner baca = new Scanner(System.in);  // membuat Scanner objek / Instansiasi untuk menginput dari keyboard
                System.out.println("Masukan 3 buah bilangan dilengkapi dengan 2 operator aritmatika (Beri spasi setiap karakter).");
                /** Deklarasi variable */
                double bilangan1 = baca.nextDouble();  
                String operator1 = baca.next();
                double bilangan2 = baca.nextDouble();
                String operator2 = baca.next();
                double bilangan3 = baca.nextDouble();
                // variable bilangan1,bilangan2,bilangan3 bertipe double agar bila ada hasil desimal, hasilnya bisa ditampilkan
                // variable operator1, operator2 bertipe String karena isinya berupa operator aritmatika

                boolean test = testTingkat(operator1, operator2);

                double hitungAwal = 0; // deklarasi variable hitungAwal
                double hitungAkhir = 0; // deklarasi variable hitungAkhir

                // a. setara = 3 * 4 + 5
                // b. tidak setara = 3 + 4 * 5
                if(test){
                    // pemanggilan proses hitung apabila setara/true
                    // proses hitung bila seperti contoh a. Pada contoh ini merupakan proses hitung yang setara
                    hitungAwal = hitung(new double[]{bilangan1,bilangan2},operator1);
                    hitungAkhir = hitung(new double[]{hitungAwal,bilangan3},operator2);
                }
                else{
                    // pemanggilan proses hitung apabila tidak setara/false
                    // proses hitung bila seperti contoh b. Pada contoh ini merupakan proses hitung yang tidak setara
                    hitungAwal = hitung(new double[]{bilangan2,bilangan3},operator2);
                    hitungAkhir = hitung(new double[]{bilangan1,hitungAwal},operator1);
                } 
                System.out.println(hitungAkhir);    //menampilkan hasil akhir yang ada di dalam variabel hitungAkhir
             }
            // proses hitung aritmatika
            private static double hitung(double[] bil, String op) {
            double result = 0;//deklarasi variabel result
            if (op.equals("+")) {
                result = bil[0] + bil[1];//penyeleksian untuk operator +
            } else if (op.equals("-")) {
                result = bil[0] - bil[1];//penyeleksian untuk operator -
            } else if (op.equals("*")) {
                result = bil[0] * bil[1];//penyeleksian untuk operator *
            } else if (op.equals("/")) {
                result = bil[0] / bil[1];//penyeleksian untuk operator /
            }
            return result;//meminta nilai kembali variabel result
        }
        // false tidak setingkat
        // true setingkat

        // proses menyusun tingkatkan operator
        private static boolean testTingkat(String op1, String op2){
            boolean expression = false; /* Deklarasi variabel expression, untuk menandakan apakah operator1 lebih tinggi tingkatannya daripada operator2 atau sebaliknya
             * operator * dan operator / tingkatannya lebih tinggi daripada
             * operator + dan operator -
             * operator * dan operator / = setara
             * operator + dan operator - = setara
             * apabila operator 1 dan operator 2 sama maka setara
             * operator yang lebih tinggi didahulukan diproses.
             */
            if(op1.equals("+") && op2.equals("*")){
                expression = false;// + lebih rendah dari *
            }else if(op1.equals("+") && op2.equals("/")){
                expression = false;// + lebih rendah dari /
            }else if(op1.equals("+") && op2.equals("+")){
                expression = true;// setara
            }else if (op1.equals("+") && op2.equals("-")) {
                expression = true;// setara
            }else if(op1.equals("-") && op2.equals("*")){
                expression = false;// - lebih rendah dari *
            }else if(op1.equals("-") && op2.equals("/")){
                expression = false;// - lebih rendah dari /
            }else if(op1.equals("-") && op2.equals("+")){
                expression = true;// setara
            }else if(op1.equals("-") && op2.equals("-")){
                expression = true;// setara
            }else if(op1.equals("*") && op2.equals("*")){
                expression = true;// setara
            }else if(op1.equals("*") && op2.equals("/")){
                expression = true;// setara
            }else if(op1.equals("*") && op2.equals("+")){
                expression = true;// * lebih tinggi dari +
            }else if(op1.equals("*") && op2.equals("-")){
                expression = true;// * lebih tinggi dari -
            }else if(op1.equals("/") && op2.equals("*")){
                expression = true;// setara
            }else if(op1.equals("/") && op2.equals("/")){
                expression = true;// setara
            }else if (op1.equals("/") && op2.equals("+")) {
                expression = true;// / lebih tinggi dari +
            }else if(op1.equals("/") && op2.equals("-")){
                expression = true;// / lebih rendah dari -
            }else{
                System.out.println("Error!");
            }
            return expression;//menggembalikan  nilai variabel expression
        }       
    }
Tahap selanjutnya running program pada kalkulatorSederhana.java, dan berikut merupakan hasilnya:




Tahap terakhir pada persoalan ini adalah megucap syukur atas selesainya tugas tersebut.
Meskipun hasilnya belum sempurna.

- A L H A M D U L I L L A H -

Keritik dan sarannya ditunggu ya.. semoga bisa bermanfaat..
Terimakasih. J

Untuk download file java bisa KLIK ---->  Download file.java
Untuk download file class bisa KLIK ----> Download file.class

Program Menentukan Jumlah Bilangan Positif dan Negatif


Program Menentukan Jumlah Bilangan Positif dan Negatif

Ini adalah tugas yang saya dapatkan dari guru pembimbing saya di sekolah. Tugas ini merupakan Tugas Hari Raya untuk NIS Ganjil. Soal Ganjil tersebut bisa kita lihat seperti berikut:

SOAL NIS GANJIL
Buatlah sebuah program dengan menggunakan bahasa java dengan  algoritma dan ketentuan berikut ini ,
Program Menentukan Jumlah Bilangan Positif dan Negatif
Tools yang digunakan : Teks Editor (Notepad, Wordpad, Notepad++, Komodo, etc)

Tools yang saya gunakan oleh saya kali ini adalah NetBeans IDE 7.0.1

Ada beberapa tahap untuk menyelesaikan program tersebut, yaitu:
1.  Jangan lupa berdo’a sebelum mengerjakan tugas ini :D
2. Buka program NetBeans IDE 7.0.1 dan buat project baru, contohnya: THR_Alfi Waizh Al Qorni_XIIRPL3.
3. Lalu buat pakage dan beri nama pakage tersebut. Contohnya: soalGanjil.
4. Dalam pembuatan program  ini saya membuat 2 buah class. Dimana yang satu adalah main class dan satunya lagi library class. Dengan nama masing-masing: positifNegatif_MainClass dan positifNegarif_lib.
Berikut adalah coding yang saya buat pada 2 class tersebut.


positifNegatif_lib.java

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

/**
 *
 * @author HP
 */

import java.util.Scanner; //kode ini digunakan untuk meload library Scanner. Fungsinya menerima input dari user(input dari keyboard)
public class positifNegatif_lib { //mendeklarasikan class bernama positifNegatif_lib
   
    int jumlah_bil = 0; // mendeklarasikan variable jumlah_bil dengan nilai awal nol, kedalam tipe integer
    int input; // deklarasi variable input kedalam tipe integer
    int bilPositif = 0, bilNegatif = 0; // deklarasi variable bilPositif dan bilNegatif dengan nilai awal nol, kedalam tipe integer
 
    public int input(){ // method aksesor / fungsi
        Scanner bacaData = new Scanner(System.in);  // membuat objek scanner "bacaData"
        System.out.print("Jumlah bilangan yang akan dimasukan: ");
        jumlah_bil = bacaData.nextInt();    // meminta inputan dari keyboard
       
        return jumlah_bil;  // nilai kembali dari jumlah_bil
    }
    public void prosesPenentuanBilangan(){  // prosedur prosesPenentuanBilangan
        for(int i=1; i<= jumlah_bil; i++){  // looping untuk bilangan ke- n sesuai dengan jumlah_bil yang ditentukan user
            Scanner bacaData = new Scanner(System.in);  // membuat objek scanner
            System.out.print("Bilangan ke "+i+": ");
            input = bacaData.nextInt(); // meminta inputan dari keyboard
                if(input>0){    // jika bilangan yang diinputkan lebih dari 0
                    bilPositif++;  // maka nilai positif akan bertambah 1.
                }
                else if(input<0){   // jika tidak atau sebaliknya, input kurang dari 0
                    bilNegatif++;      // maka nilai negatif akan bertambah 1.
                }
        }
        /** proses pencetakan hasil akhir */
        System.out.println("\n\tO U T P U T");
        System.out.println("Jumlah bilangan positif: "+bilPositif); // mencetak jumlah bilangan positif dari bilangan-bilangan yang diinputkan user.
        System.out.println("Jumlah bilangan negatif: "+bilNegatif); // mencetak jumlah bilangan negatif dari bilangan-bilangan yang diinputkan user.
    }
}


positifNegatif_MainClass.java

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

/**
 *
 * @author HP
 */
public class positifNegatif_MainClass {
    public static void main(String[] args) {
        positifNegatif_lib tampil = new positifNegatif_lib();   // tahap instansiasi class positifNegatif_lib menjadi objek tampil.
        tampil.input();     // pemanggilan fungsi input.
        tampil.prosesPenentuanBilangan();   // pemanggilan prosedur prosesPenentuanBilangan.
    }
}


Tahap selanjutnya running program pada positifNegatif_MainClass.java, dan berikut merupakan hasilnya:


Tahap terakhir pada persoalan ini adalah megucap syukur atas selesainya tugas tersebut.

- A L H A M D U L I L L A H -

Tugas ini ditujukan untuk tugas mata pelajaran produktif.
Keritik dan sarannya ditunggu ya.. semoga bisa bermanfaat..
Terimakasih. J


Untuk download file java bisa KLIK ----> Download file.java
Untuk download file class bisa KLIK ----> Download file.class