Laporan Praktikum Bahasa Pemrograman Java DANU ANDIKA(1314370103)

74
7/21/2019 Laporan Praktikum Bahasa Pemrograman Java DANU ANDIKA(1314370103) http://slidepdf.com/reader/full/laporan-praktikum-bahasa-pemrograman-java-danu-andika1314370103 1/74  LAPORAN PRAKTIKUM BAHASA PEMROGRAMAN JAVA  Nama Praktikan NPM Mahasiswa Tanggal Kumpul Tanda tangan Praktikan Danu Andika 1314370103 9 Desember 2015  Nama Penilai Tanggal Koreksi Nilai Tanda tangan Dosen Indri Sulistianingsih S.Kom 12 Desember 2015 Fakultas Ilmu Komputer Universitas Pembangunan Pancabudi Medan 2015 Kelas SI 5 Pagi B

description

Nama : Danu AndikaNpm : 1314370103Universitas Pembangunan Pancabudi Medan

Transcript of Laporan Praktikum Bahasa Pemrograman Java DANU ANDIKA(1314370103)

Page 1: Laporan Praktikum Bahasa Pemrograman Java DANU ANDIKA(1314370103)

7/21/2019 Laporan Praktikum Bahasa Pemrograman Java DANU ANDIKA(1314370103)

http://slidepdf.com/reader/full/laporan-praktikum-bahasa-pemrograman-java-danu-andika1314370103 1/74

 

LAPORAN PRAKTIKUM

BAHASA PEMROGRAMAN JAVA

 Nama Praktikan NPM Mahasiswa Tanggal Kumpul Tanda tanganPraktikan

Danu Andika 1314370103 9 Desember

2015

 Nama Penilai Tanggal Koreksi Nilai Tanda tanganDosen

Indri Sulistianingsih S.Kom 12 Desember 2015

Fakultas Ilmu Komputer

Universitas Pembangunan Pancabudi

Medan

2015

Kelas

SI 5 Pagi B

Page 2: Laporan Praktikum Bahasa Pemrograman Java DANU ANDIKA(1314370103)

7/21/2019 Laporan Praktikum Bahasa Pemrograman Java DANU ANDIKA(1314370103)

http://slidepdf.com/reader/full/laporan-praktikum-bahasa-pemrograman-java-danu-andika1314370103 2/74

 

ii 

KATA PENGANTAR

Puji Syukur saya ucapkan kehadirat Allah S.W.T karena dengan rahmat

dan hidayahnya, sehingga Laporam Bahasa Pemrograman Java ini dapat

diselesaikan dalam rangka menunjang kelengkapan pendidikan di perkuliahan.

Laporan Bahasa Pemrograman Java ini dibuat guna memenuhi Tugas

Matakuliah Bahasa Pemrograman Java. Saya berharap agar hasil Laporam Bahasa

Pemrograman Java ini berguna bagi seluruh pihak dalam menggali informasi

khususnya dalam dunia pendidikan.

Saya menyadari bahwa masih banyak kekurangan dari hasil laporan ini

maka untuk itu saya mengharapkan kritik dan saran dari semua pihak untuk dapat

memberikan sumbang pikiran demi kesempurnaan laporan ini.

Medan, 9 Desember 2015

Danu Andika

1314370103

Page 3: Laporan Praktikum Bahasa Pemrograman Java DANU ANDIKA(1314370103)

7/21/2019 Laporan Praktikum Bahasa Pemrograman Java DANU ANDIKA(1314370103)

http://slidepdf.com/reader/full/laporan-praktikum-bahasa-pemrograman-java-danu-andika1314370103 3/74

 

iii 

DAFTAR ISI

COVER ......................................................................................................... i

KATA PENGANTAR ................................................................................. .. ii

DAFTAR ISI .................................................................................................. iii

BAB I Pendahuluan

1.1 Latar Belakang ........................................................................... 1

1.2 

Tujuan Praktikum ....................................................................... 1

1.3 

Manfaat ....................................................................................... 1

BAB II Landasan Teori

2.1. Pernyataan dan Ekspresi ........................................................... 2

2.2. Variabel, Tipe Data dan Literal ................................................. 2

2.2.1 Variabel ................................................................................ 2

2.2.2 Tipe Data ............................................................................. 4

2.2.3 Literal ................................................................................... 6

2.3. Array ......................................................................................... 72.4. Operator .................................................................................... 7

2.4.1 Operator Aritmatika ............................................................. 7

2.4.2 Operator Penugasan / Assignment ....................................... 8

2.4.3 Operator Pembanding .......................................................... 8

2.4.4 Operator Logika ................................................................... 9

2.5. Operator I/O Stream Sederhana ................................................ 9

2.6. Pengaturan Format Output Numerik .......................................... 10

2.7. Konversi String dan Bilangan (Number) ................................... 12

2.8. Pernyataan Penentu Keputusan .................................................. 132.9. Pernyataan Pengulangan Proses ................................................. 17

2.10. Pernyataan Pemindah Proses ................................................... 19

BAB III Hasil Percobaan

3.1  Membuat Project Baru ............................................................... 21

3.2  Modul 2 ...................................................................................... 24

3.3  Modul 3 ...................................................................................... 26

3.4 

Modul 4 ...................................................................................... 28

Page 4: Laporan Praktikum Bahasa Pemrograman Java DANU ANDIKA(1314370103)

7/21/2019 Laporan Praktikum Bahasa Pemrograman Java DANU ANDIKA(1314370103)

http://slidepdf.com/reader/full/laporan-praktikum-bahasa-pemrograman-java-danu-andika1314370103 4/74

 

iv 

3.5  Modul 5 ...................................................................................... 31

3.6  Modul 6 ...................................................................................... 39

3.7  Modul 7 ...................................................................................... 44

3.8  Modul 8 ...................................................................................... 50

BAB IV Analisa Hasil Percobaan

4.1  Analisa Modul 2 ........................................................................ 58 

4.2  Analisa Modul 3 ........................................................................ 58 

4.3 

Analisa Modul 4 ........................................................................ 60 

4.4  Analisa Modul 5 ........................................................................ 61 

4.5 

Analisa Modul 6 ........................................................................ 63 

4.6 

Analisa Modul 7 ........................................................................ 64 

4.7  Analisa Modul 8 ........................................................................ 66 

BAB V Penutup

5.1  Kesimpulan ............................................................................... 69

5.2  Saran ........................................................................................ 69

DAFTAR PUSTAKA ..................................................................................... 70 

Page 5: Laporan Praktikum Bahasa Pemrograman Java DANU ANDIKA(1314370103)

7/21/2019 Laporan Praktikum Bahasa Pemrograman Java DANU ANDIKA(1314370103)

http://slidepdf.com/reader/full/laporan-praktikum-bahasa-pemrograman-java-danu-andika1314370103 5/74

 

BAB I 

PENDAHULUAN

1.1  Latar Belakang

Keterlambatan proses dapat terjadi akibat dari system yang berjalan belum

terkomputerisasi, sehingga akan memakan waktu, biaya bahkan tenaga.

Perkembangan teknologi saat ini dapat dipastikan mengikutsertakan

 perkembangan perangkat lunak karena sangat dibutuhkan untuk mempermudah

 berbagai kegiatan yang tujuan utamanya adalah untuk meminimalisasi proses

manualisasi. perkembangan perangkat lunak juga telah melahirkan konsep-konsep

 pemrograman, mulai dari konsep pemrograman sederhana (hanya menuliskan

 baris-baris program dari yang berjalan dari awal sampai akhir program),

 pembuatan prosedur-prosedur, sampai pada pemrograman berorientasi obyek.

Bahasa pemrograman java adalah salah satu dari perangkat lunak yang

dapat digunakan untuk membuat sebuah program yang akan membantu manusia

mengurangi proses manualisasi.

1.2 

Tujuan Praktikum

  Memahami dalam proses pembuatan sebuah program dengan bahasa

 pemrograman java

 

Dapat mengetahui bagaimana berinteraksi dengan komputer

  Mengetahui struktur program dengan bahasa pemrograman java

1.3  Manfaat Praktikum

 

Memperdalam pengetahuan tentang bahasa pemrograman java

 Melatih skill menuju dunia kerja

 Membiasakan menggunakan program dalam kehidupan sehari-hari dan

membuatnya dengan bahasa pemrogramana java

Page 6: Laporan Praktikum Bahasa Pemrograman Java DANU ANDIKA(1314370103)

7/21/2019 Laporan Praktikum Bahasa Pemrograman Java DANU ANDIKA(1314370103)

http://slidepdf.com/reader/full/laporan-praktikum-bahasa-pemrograman-java-danu-andika1314370103 6/74

 

BAB II

LANDASAN TEORI

2.1  Pernyataan dan Ekspresi

Pernyataan adalah perintah yang menyebabkan sesuatu terjadi dan

merepresentasikan aksi tunggal dan tiap baris kode diakhiri dengan semicolon

" ; ".

Contoh:

initComponents(); 

Ekpresi adalah pernyataan yang dapat menghasilkan suatu nilai. Nilai yang

dihasilkan oleh pernyataan ini yang disebut dengan nilai balik. Dan nilai balik

 bisa berupa bilangan, boolean, atau objek. Method tanpa nilai balik biasanya

menggunakan keyword void.

Aritmatika (*,/,+,-,%)

Increment dan decrement (++,--)

Relasi (>, <, >=, <=, ==,!=)

Logika (&&, ||, !)

2.2  Variabel, Tipe Data dan Literal

2.2.1  Variabel

Variabel adalah suatu nama yang digunakan untuk menyimpan

suatu nilai dari tipe data tertentu. Nilai dari suatu variabel disebut literal.

Sebelum digunakan variabel harus dideklarasikan. Deklarasi disesuaikan

dengan tipe data yang ingin direpresentasikan.

Deklarasi variabel mengikut aturan sebagai berikut: : tipeData

namaVariabel. Contoh berikut: adalah deklarasi variabel dengan

menggunakan tipe data int :

Contoh:

int d,a;

Page 7: Laporan Praktikum Bahasa Pemrograman Java DANU ANDIKA(1314370103)

7/21/2019 Laporan Praktikum Bahasa Pemrograman Java DANU ANDIKA(1314370103)

http://slidepdf.com/reader/full/laporan-praktikum-bahasa-pemrograman-java-danu-andika1314370103 7/74

 

Kata int adalah tipe data, sedangkan d dan a adalah nama variabel.

Tipe data dari suatu variabel bisa berupa tipe data primitif (seperti : int,

 byte, char, short, boolean dll) atau tipe data berupa class (misalnya Integer,

Byte, Short, Boolean dll - bisa kelas yang anda buat).

Variabel bisa diinisialisasi (diberi nilai awal). Misalnya pada contoh di

atas kita melakukan inisialisasi sebagai berikut::

int d = 0;

int a = 5; 

Tanda ; (titik koma) menyatakan satu statemen yang utuh (Dalam bahasa

manusia ’satu kalimat yang lengkap - berakhir dengan tanda titik’). 

Java memiliki aturan-aturan dalam penamaan suatu variabel. Aturan-

aturan itu adalah sebagai berikut: :

Penamaan variabel tidak boleh menggunakan kata-kata kunci dalam bahasa pemrogramman java. Kata-kata kunci tersebut adalah sebagai

 berikut: (berdasarkan urutan abjad) : abstract, boolean, break, byte, case,

catch, char, class, const, continue, default, do, double, else, extends, final,

finally, float, for, goto, if, implements, import,instanceof, int, interface,

long, native, new, package, private, protected, public, return, short, static,

super, switch, synchronized, this, throw, throws, transient, try, void,

volatile dan while. Harus dimulai dengan huruf atau garis bawah ( _ ) atautanda dollar ($), tidak boleh angka. Huruf kedua dan seterusnya bebas

(bisa angka) tapi tidak boleh menggunakan operator yang digunakan java

(semisal +, ++, * , -,  —   dll) Panjang nama variabel tidak dibatasi tetapi

kata-katanya tidak boleh terpisah.

 Nama Variabel dalam java adalah case sensitif (membedakan huruf kecil

Page 8: Laporan Praktikum Bahasa Pemrograman Java DANU ANDIKA(1314370103)

7/21/2019 Laporan Praktikum Bahasa Pemrograman Java DANU ANDIKA(1314370103)

http://slidepdf.com/reader/full/laporan-praktikum-bahasa-pemrograman-java-danu-andika1314370103 8/74

 

dan huruf besar. Nama variabel bilangan1 dan Bilangan1 dianggap sebagai

dua variabel yang berbeda.

Penamaan variabel sebaiknya interpretatif, menggambarkan raealita yang

diwakilinya. Penamaan variabel String namaMahasiswa adalah lebih

interpretatif dibandingkan dengan variabel String x.

Sudah menjadi konvensi (kesepakatan) para programmer java juga, jika

 penamaan variabel dimulai dengan huruf, maka hurufnya harus huruf

kecil.

Berikut: contoh penamaan variabel yang valid dan tidak valid :

int bilangan1 – > valid 

int bilangan 1 – > tidak valid

int 1bilangan – > tidak valid

int _bilangan1 – > valid

int $bilangan1 – > valid

int b1langan – > valid int bi-langan – > tidak valid

int bi+langan – > tidak valid

2.2.2  Tipe Data

Tipe data biasanya digunakan untuk menentukan jenis nilai yang

dapat ditampung oleh suatu variabel, umumnya telah menyediakan tipe-

tipe data yang sederhana (simple) maupun yang terstruktur. Apabila kitamembutuhkan tipe data yang belum tersedia, kita dapat mendefinisikan

sendiri tipe data baru yang disebut enumerated type.

Jenis-Jenis Tipe Data:

a.  Integer (Bilangan Bulat).

Penggolongan tipe data integer tersebut dimaksudkan untuk

membatasi alokasi memori yang dibutuhkan. Misalkan untuk suatu

 perhitungan dari suatu variabel bilangan diperkirakan nilai maksimumnya

Page 9: Laporan Praktikum Bahasa Pemrograman Java DANU ANDIKA(1314370103)

7/21/2019 Laporan Praktikum Bahasa Pemrograman Java DANU ANDIKA(1314370103)

http://slidepdf.com/reader/full/laporan-praktikum-bahasa-pemrograman-java-danu-andika1314370103 9/74

 

32767 kita cukup mendeklarasikan variabel bilangan sebagai integer (2

 byte), daripada sebagai longint(4 byte). Didalam kompilernya, Pascal

menyediakan konstanta untuk bilangan Integer yaitu: MaxInt and

MaxLongInt, pemrogram bisa menggunakannya didalam programnya

tanpa harus terlebih dahulu mendefinisikannya. Contoh bilangan integer

adalah: 34 6458 -90 0 1112.

Penggolongan Tipe Data Integer

Tipe data Ukuran Tempat Rentang Nilai

Byte 1 Byte 0 s/d +255

Shortint 1 Byte -28 s/d +127

Integer 2 Byte -32768 s/d 32767

Word 2 Byte 0 s/d 65535

Longint 4 Byte 2147483648 s/d 2147483647

b.  Real (Bilangan Pecahan)

Bilangan real atau nyata merupakan jenis bilangan pecahan, dapat

dituliskan secara biasa atau model scientific . Contoh bilangan real: 34.265

-3.55 0.0 35.997E+11, dimana E merupakan simbol perpangkatan 10. Jadi

452.13 mempunyai nilai sama dengan 4.5213e2. 

Penggolongan Tipe Data Bilangan Real

Tipe data Ukuran Tempat Rentang Nilai

Real 6 Byte 2.9 x 10-39 s/d 1.7 x1038

Single 4 Byte 2.9 x 10-39 s/d 1.7 x1038

Double 8 Byte 5.0 x 10-324 s/d 1.7 x10308

Extended 10 Byte 3.4 x 10-4932 s/d 1.1 x104932

Comp 8 Byte 3.4 x 10-4932 s/d 1.1 x104932

Page 10: Laporan Praktikum Bahasa Pemrograman Java DANU ANDIKA(1314370103)

7/21/2019 Laporan Praktikum Bahasa Pemrograman Java DANU ANDIKA(1314370103)

http://slidepdf.com/reader/full/laporan-praktikum-bahasa-pemrograman-java-danu-andika1314370103 10/74

 

c.  Boolean (Logika)

Merupakan tipe data logika, yang berisi dua kemungkinan nilai: TRUE

(benar) atau FALSE (salah). Turbo Pascal for Windows memiliki tiga

macam jenis ini yaitu: Boolean,WordBool, dan LongBool. Tipe Boolean

memakai memori paling kecil, sedangkan WordBool dan LongBool

dipakai untuk menulis program yang sesuai dengan lingkungan Windows.

Penggolongan Tipe Data Boolean

Tipe data Ukuran Tempat

Boolean 1 Byte

WordBool 2 Byte

LonggBool 3 Byte

d.  String

Merupakan suatu data yang menyimpan array (larik),sebagai contoh:

'ABCDEF' merupakan sebuah konstanta string yang berisikan 6 byte

karakter.Ukuran Tempat untuk tipe data ini adalah 2 s/d 256byte, dengan

 jumlah elemen 1 s/d 255. String dideklarasikan dengan string [ konstanta ]

atau string. Bila ukuran string tidak didefinisikan maka akan banyak

memakan ruang, karena ukuran string menyesuaikan dengan defaultnya.

Contoh : var kata: string [20]; atau var kata: string;

karena string merupakan array dari karakter. Maka kata[1] merupakan

karakter pertama dari string, kemudian kata[2], merupakan elemen kedua,dst.

2.2.3  Literal

Literal adalah nilai variabel/attribute atau nilai konstanta atau nilai

objek data. Ada tiga besaran literal dalam java yaitu angka, karakter, dan

string.Angka terdiri dari byte, short, int, long, float, double, dan boolean

Page 11: Laporan Praktikum Bahasa Pemrograman Java DANU ANDIKA(1314370103)

7/21/2019 Laporan Praktikum Bahasa Pemrograman Java DANU ANDIKA(1314370103)

http://slidepdf.com/reader/full/laporan-praktikum-bahasa-pemrograman-java-danu-andika1314370103 11/74

 

(dianggap angka true = 1 atau false = 0) Semua variabel dan konstanta

yang akan digunakan harus dipesan terlebih dahulu dalam deklarasi.

2.3 

Array

Suatu array adalah sebuah struktur data yang terdiri atas banyak variabel

dengan tipe data sama, dimana masing-masing elemen variabel mempunyai nilai

indeks. Setiap elemen array mampu untuk menyimpan satu jenis data (yaitu:

variabel). Suatu array dinyatakan dengan type, sehingga variabel yang bekerja

akan dinyatakan dengan:

Contoh type : Var A = array [1..10] of integer;

2.4 

Operator 

Operator adalah suatu simbol yang digunakan untuk memberikan perintah

kepada komputer untuk melakukan aksi terhadap satu atau lebih operand.

Operand sendiri adalah sesuatu yang dioperasikan oleh operator.

Di dalam java ada beberapa tipe Operator , yaitu :

 

Operator Aritmatika

  Operator Penugasan

 

Operator Pembanding 

Operator Logika

2.4.1  Operator Aritmatika

Operator aritmatika digunakan untuk melakukan operasi

matematika, seperti penambahan, pengurangan, pembagian, dan modulo

(sisa pembagian).

Simbol Nama Operator Contoh

+ Penjumlahan n=n+1;

- Pengurangan n=n-1;

* Perkalian n=n*1;

/ Pembagian n=n/1;

% Sisa Pembagian n=n%1;

+ Peyambung String n="saya"+"tidur";

Page 12: Laporan Praktikum Bahasa Pemrograman Java DANU ANDIKA(1314370103)

7/21/2019 Laporan Praktikum Bahasa Pemrograman Java DANU ANDIKA(1314370103)

http://slidepdf.com/reader/full/laporan-praktikum-bahasa-pemrograman-java-danu-andika1314370103 12/74

 

2.4.2  Operator Penugasan / Assignment 

Operator ini digunakan untuk memberi tugas suatu variabel untuk

melakukan suatu proses. Operator ini sering digunakan dalam

 pemrograman untuk mengulangi suatu perintah, salah satunya adalah

increment / decrement.

Simbol Nama Operator Operasi Contoh

+ Plus Menyatakan nilai positif angka = +1;

- Minus Menyatakan nilai negatif angka = -1;

++ Kenaikan Menambah suatu bilangan

dengan 1

angka = ++angka;

-- Penurunan Mengurangi suatu

 bilangan dengan 1

angka = --angka;

! Lawan Membalik nilai suatu

 boolean

ok = !true

2.4.3 

Operator Pembanding

Operator Pembanding merupakan suatu operator yang digunakan

untuk membandingkan antara dua buah nilai. Hasil perbandingan dari

operator ini adalah TRUE dan FALSE ( Tipe data BOOLEAN). 

Simbol Nama Operator Contoh

== Sama dengan b=(1==2);

!= Tidak sama dengan b=(1!=2);

> Lebih besar b=(1>2);

>= Lebih besar sama dengan b=(1>=2);

< Lebih kecil b=(1<2);

<= Lebih kecil sama dengan b=(1<=2);

&& Kondisi AND b=true&&false;

|| Kondisi OR b=true||false;

Page 13: Laporan Praktikum Bahasa Pemrograman Java DANU ANDIKA(1314370103)

7/21/2019 Laporan Praktikum Bahasa Pemrograman Java DANU ANDIKA(1314370103)

http://slidepdf.com/reader/full/laporan-praktikum-bahasa-pemrograman-java-danu-andika1314370103 13/74

 

! Kondisi NOT b=!true;

?: Bentuk pendek dari "if then else"

2.4.4  Operator Logika 

Operator logika adalah suatu operator yang membandingkan dua

 bukan KONDISI, mirip seperti dengan operator pembanding. Operator

Logika ini menghasilkan nilai bertipe BOOLEAN, yaitu TRUE dan

FALSE.

Simbol Nama Operator Contoh

&& Kondisi AND b=true&&false;

|| Kondisi OR b=true||false;

! Kondisi NOT b=!true;

?: Bentuk pendek dari "if then else"

2.5 

Operasi I/O Stream Sederhana Stream Standard

  System.in: menangani pembacaan dari keyboard (standard input)

  System.out: mengirimkan keluaran ke layar (standard output)

  System.err: mengirimkan kesalahan (standard error)

Membaca Input dari Keyboard

Menggunakan class Scanner (java.util.Scanner) dengan method sebagai berikut::

 

nextInt(): untuk menerima tipe data integer  nextShort(): untuk menerima tipe data short

  nextLong(): untuk menerima tipe data long

  nextDouble(): untuk menerima tipe data double

  nextFloat(): untuk menerima tipe data float

  nextLine(): untuk menerima tipe data string

  nextBoolean(): untuk menerima tipa data boolean

Page 14: Laporan Praktikum Bahasa Pemrograman Java DANU ANDIKA(1314370103)

7/21/2019 Laporan Praktikum Bahasa Pemrograman Java DANU ANDIKA(1314370103)

http://slidepdf.com/reader/full/laporan-praktikum-bahasa-pemrograman-java-danu-andika1314370103 14/74

 

10 

Contoh:

Pembagian.java

 public class Pembagian{

 public static void main(String[] args){

Scanner input = new Scanner(System.in);

System.out.print(“Masukkan  bilangan pertama: “); 

int bilangan1 = input.nextInt();

System.out.print(“Masukkan  bilangan kedua: “); 

int bilangan2 = input.nextInt();

System.out.print(“Hasil  pembagian: ” + 

(bilangan1 / bilangan2));

}

}

2.6  Pengaturan Format Output Numerik

Metode Pengaturan Format 

1.  Menggunakan Method System.out.format() 

2. 

Menggunakan DecimalFormat Class

1. Method System.out.format() 

 public class TestFormat {

 public static void main(String[] args) {

long n = 461012;

System.out.format(“%d%n”, n); 

System.out.format(“%08d%n”, n); System.out.format(“%+8d%n”, n); 

System.out.format(“%,8d%n”, n); 

System.out.format(“%+,8d%n%n”, n); 

double pi = Math.PI;

System.out.format(“%f%n”, pi); 

System.out.format(“%.3f%n”, pi); 

System.out.format(“%10.3f%n”, pi); 

Page 15: Laporan Praktikum Bahasa Pemrograman Java DANU ANDIKA(1314370103)

7/21/2019 Laporan Praktikum Bahasa Pemrograman Java DANU ANDIKA(1314370103)

http://slidepdf.com/reader/full/laporan-praktikum-bahasa-pemrograman-java-danu-andika1314370103 15/74

 

11 

System.out.format(“%-10.3f%n”, pi); 

Calendar c = Calendar.getInstance();

System.out.format(“%tB %te, %tY%n”, c, c, c); 

System.out.format(“%tl:%tM %tp%n”, c, c, c); 

System.out.format(“%tD%n”, c); 

}

}

Hasil Eksekusi 

461012

00461012

+461012

461,012

+461,012

3.141593

3.142

3.142

3.142

May 29, 20062:34 am

05/29/06

2. DecimalFormat Class 

 public class DecimalFormatDemo {

 public static void main(String[] args){

DecimalFormat formatku = new DecimalFormat(“###.##”); //String output = formatku.format(45.8398767);

//System.out.println(output);

System.out.println(formatku.format(45.8398767));

}

}

DecimalFormatDemoLengkap 

 public class DecimalFormatDemoLengkap{

Page 16: Laporan Praktikum Bahasa Pemrograman Java DANU ANDIKA(1314370103)

7/21/2019 Laporan Praktikum Bahasa Pemrograman Java DANU ANDIKA(1314370103)

http://slidepdf.com/reader/full/laporan-praktikum-bahasa-pemrograman-java-danu-andika1314370103 16/74

 

12 

static public void customFormat(String pattern, double value ) {

DecimalFormat myFormatter = new DecimalFormat(pattern);

String output = myFormatter.format(value);

System.out.println(value + ” ” + pattern + ” ” + output); 

}

static public void main(String[] args) {

customFormat(“###,###.###”, 123456.789); 

customFormat(“###.##”, 123456.789); 

customFormat(“000000.000”, 123.78); 

customFormat(“$###,###.###”, 12345.67); 

}

}

Hasil Eksekusi 

123456.789 ###,###.### 123,456.789 123456.789 ###.## 123456.79

123.78 000000.000 000123.780 12345.67 $###,###.### $12,345.67

2.7  Konversi String dan Bilangan (Number)

1. 

Konversi String ke Bilangan String myString;

double myDbl = Double.parseDouble(myString); //konversi string ke

double

Integer.parseInt(myString); //konversi string ke integer

Float.parseFloat(myString); //konversi string float

Argument untuk Menerima Input  

 public class LuasSegitigaArgs { public static void main(String[] args) {

double alas= Double.parseDouble(args[0]);

double tinggi = Double.parseDouble(args[1]);

double luas = (alas*tinggi)/2;

System.out.println(“Luas Segitiga : ” + luas); 

}

}

Page 17: Laporan Praktikum Bahasa Pemrograman Java DANU ANDIKA(1314370103)

7/21/2019 Laporan Praktikum Bahasa Pemrograman Java DANU ANDIKA(1314370103)

http://slidepdf.com/reader/full/laporan-praktikum-bahasa-pemrograman-java-danu-andika1314370103 17/74

 

13 

2.  Konversi Bilangan ke String 

double myDouble;

int myInteger;

float myFloat;

String myString = Double.toString(myDouble);

Integer.toString(myInteger);

Float.toString(myFloat);

2.8  Pernyataan Penentu Keputusan

1. 

if, if-else, if-else if –  else

2.  switch

if  

  Pernyataan kondisi yang digunakan pengambilan keputusan terhadap dua

 buah kemungkinan

  if bisa berdiri sendiri atau dengan menggunakan else

  Bentuk:

if(kondisi){ 

// blok pernyataan yang dijalankan, bila kondisi benar 

}

PernyataanIF.java 

 public class PernyataanIF{

 public static void main(String[] args){

int diskon =0, totalBelanja = 500000;

if (totalBelanja >= 100000){

diskon = totalBelanja/10;}

System.out.println(“Diskon = ” + diskon); 

}

}

if-else 

 

if-else mengatur pernyataan yang dijalankan sewaktu kondisi bernilai

 benar atau salah

Page 18: Laporan Praktikum Bahasa Pemrograman Java DANU ANDIKA(1314370103)

7/21/2019 Laporan Praktikum Bahasa Pemrograman Java DANU ANDIKA(1314370103)

http://slidepdf.com/reader/full/laporan-praktikum-bahasa-pemrograman-java-danu-andika1314370103 18/74

 

14 

  Bentuk:

if(kondisi){ 

// blok pernyataan yang dijalankan, bila kondisi benar 

} else{ 

// blok pernyataan yang dijalankan, bila kondisi salah 

}

PernyataanIFELSE.java 

 public class PernyataanIFELSE{

 public static void main(String[] args){

int diskon =0, totalBelanja = 500000;

if (totalBelanja >= 100000){

diskon = totalBelanja/10;

} else{

diskon = 0;

}

System.out.println(“Diskon = ” + diskon); 

}}

if-else if-else 

 

Mengatur pernyataan yang dijalankan sewaktu kondisi berupa pilihan 

  Bentuk:

if (kondisiA){

// pernyataan yang dijalankan, bila kondisiA benar}else if (kondisiB){

// pernyataan yang dijalankan, bila kondisiB benar

}else if (kondisiC){

// pernyataan yang dijalankan, bila kondisiC benar

}else{

// pernyataan yang dijalankan untuk kondisi selain itu

}

Page 19: Laporan Praktikum Bahasa Pemrograman Java DANU ANDIKA(1314370103)

7/21/2019 Laporan Praktikum Bahasa Pemrograman Java DANU ANDIKA(1314370103)

http://slidepdf.com/reader/full/laporan-praktikum-bahasa-pemrograman-java-danu-andika1314370103 19/74

 

15 

PernyataanIFELSEIF.java 

 public class PernyataanIFELSEIF{

 public static void main(String[] args) {

int skorUjian= 86; char nilai;

if (skorUjian >= 90) {

nilai = ‘A’; 

} else if (skorUjian >= 80) {

nilai = ‘B’; 

} else if (skorUjian >= 70) {

nilai = ‘C’; 

} else {

nilai = ‘D’; 

}

System.out.println(“Nilai = ” + nilai); 

}

}

Operator Ternary (Kondisi)  

Pernyataan kondisi yang menggunakan operator ternary (melibatkan tiga

buahoperand)

  Bentuk:

ekspresi_kondisi ? nilai_1 : nilai_2

OperatorTernary.java 

 public class OperatorTernary{ public static void main(String[] args){

int totalBelanja = 500000;

int diskon = totalBelanja >= 100000 ?totalBelanja/10 : 0; 

System.out.println(“Diskon = ” + diskon); 

}

}

Page 20: Laporan Praktikum Bahasa Pemrograman Java DANU ANDIKA(1314370103)

7/21/2019 Laporan Praktikum Bahasa Pemrograman Java DANU ANDIKA(1314370103)

http://slidepdf.com/reader/full/laporan-praktikum-bahasa-pemrograman-java-danu-andika1314370103 20/74

 

16 

Switch 

  Switch digunakan untuk melakukan tindakan berbeda terhadap

sejumlah kemungkinan nilai

 

Bentuk:

switch(ekspresi){ 

case nilaiSatu: 

Pernyataan 1

break; 

case nilaiDua: 

Pernyataan2

break; 

default: PernyataanN; 

}

PernyataanSWITCH.java 

 public class PernyataanSWITCH1{

 public static void main(String[] args){

int pilihan = 3;

switch(pilihan){case 1:

System.out.println(“Soto Ayam”); 

 break;

case 2:

System.out.println(“Gule Kambing”); 

 break;

case 3:System.out.println(“Nasi Goreng”); 

 break;

default:

System.out.println(“Silakan Pilih 1, 2 atau 3”); 

}

}

}

Page 21: Laporan Praktikum Bahasa Pemrograman Java DANU ANDIKA(1314370103)

7/21/2019 Laporan Praktikum Bahasa Pemrograman Java DANU ANDIKA(1314370103)

http://slidepdf.com/reader/full/laporan-praktikum-bahasa-pemrograman-java-danu-andika1314370103 21/74

 

17 

2.9  Pernyataan Pengulangan Proses

Pernyataan Pengulangan Proses 

1. 

for

2. 

while

3.  do-while

for 

  for sering disebut for loop, karena digunakan untuk proses looping atau

 pengulangan

  Bentuk:

for (inisialisasi; kondisi; penaikan_penurunan){

 pernyataan

}

PernyataanFOR.java  

 public class PernyataanFOR {

 public static void main(String[] args){

for(int i=1; i<11; i++){ 

System.out.println(i);

}

}

PernyataanFOREnhanced.java  

class PernyataanFOREnhanced {

 public static void main(String[] args){int[] numbers = {1,2,3,4,5,6,7,8,9,10}; 

for (int i : numbers) { 

System.out.println(i);

}

}

Page 22: Laporan Praktikum Bahasa Pemrograman Java DANU ANDIKA(1314370103)

7/21/2019 Laporan Praktikum Bahasa Pemrograman Java DANU ANDIKA(1314370103)

http://slidepdf.com/reader/full/laporan-praktikum-bahasa-pemrograman-java-danu-andika1314370103 22/74

 

18 

While 

  while digunakan untuk melakukan proses pengulangan suatu blok

 pernyataanselama kondisinya bernilai true 

 

Bentuk:

while (kondisi) {

 pernyataan

}

PernyataanWHILE.java  

class PernyataanWHILE {

 public static void main(String[] args){

int i = 1; 

while (i < 11) { 

System.out.println(i);

i++; 

}

}

do…while 

  do … while digunakan untuk melakukan proses pengulangan suatu

blok  pernyataan selama kondisinya bernilai true

  Pernyataan dalam blok paling tidak dieksekusi satu kali 

  Bentuk:

do { pernyataan

} while (kondisi);

PernyataanDOWHILE.java  

class PernyataanDOWHILE {

 public static void main(String[] args){

int i = 1;

Page 23: Laporan Praktikum Bahasa Pemrograman Java DANU ANDIKA(1314370103)

7/21/2019 Laporan Praktikum Bahasa Pemrograman Java DANU ANDIKA(1314370103)

http://slidepdf.com/reader/full/laporan-praktikum-bahasa-pemrograman-java-danu-andika1314370103 23/74

 

19 

do { 

System.out.println(i);

i++; 

} while (i <= 10); 

}

}

2.10 Pernyataan Pemindahan Proses 

Pernyataan Pemindah Proses 

1.  return

2. 

 break

3. 

continue

return 

  Digunakan untuk keluar dari method 

 

return memiliki dua bentuk:

1.  mengembalikan nilai (sesuai dengan tipe data)

2. 

tidak mengembalikan nilai (untuk void)

Contoh:

int perkalian(int x, int y){

return x * y; 

}

void perkalian(int x, int y){

hasilKali = x * y;

return; }

Break  

  Penyataan break digunakan untuk keluar dari suatu

pengulangan (loop)

 

Penggunaan break bisa berbentuk tanpa label atau berlabel 

Page 24: Laporan Praktikum Bahasa Pemrograman Java DANU ANDIKA(1314370103)

7/21/2019 Laporan Praktikum Bahasa Pemrograman Java DANU ANDIKA(1314370103)

http://slidepdf.com/reader/full/laporan-praktikum-bahasa-pemrograman-java-danu-andika1314370103 24/74

 

20 

PernyataanBREAK.java  

 public class PernyataanBREAK {

 public static void main(String[] args){

for(int i=1; i<11; i++){

if(i==5) break; 

System.out.println(i);

}

}

}

PernyataanBREAKLABEL.java  

 public class PernyataanBREAK {

 public static void main(String[] args){

selesai: 

for(int i=1; i<11; i++){

if(i==5) break selesai; 

System.out.println(i);

}

}}

Continue 

 

Digunakan untuk melanjutkan eksekusi ke suatu pengulangan (loop)

  Bisa berbentuk tanpa label atau berlabel 

  Bentuk code persis sama dengan break , baik untuk yang tanpa label

atau berlabel

Page 25: Laporan Praktikum Bahasa Pemrograman Java DANU ANDIKA(1314370103)

7/21/2019 Laporan Praktikum Bahasa Pemrograman Java DANU ANDIKA(1314370103)

http://slidepdf.com/reader/full/laporan-praktikum-bahasa-pemrograman-java-danu-andika1314370103 25/74

 

21 

BAB III

HASIL PERCOBAAN

Pada pembuatan program dibawah ini Penulis menggunakan NetBeans IDE 8.0.2.

3.1 Membuat Project Baru

-  Jalankan software Netbeans Klik windows Start -> All program ->

Netbeans -> Netbeans IDE 8.0.2, maka akan tampil seperti berikut: :

-  Pada menu klik File -> New Project, kemudian pada Categories pilih Java

kemudian klik next 

Page 26: Laporan Praktikum Bahasa Pemrograman Java DANU ANDIKA(1314370103)

7/21/2019 Laporan Praktikum Bahasa Pemrograman Java DANU ANDIKA(1314370103)

http://slidepdf.com/reader/full/laporan-praktikum-bahasa-pemrograman-java-danu-andika1314370103 26/74

 

22 

-  Pada Project Name isikan nama file aplikasi yang akan dibuat.

Contoh: DANU(1314370103)

-  Pada Project Location, Cari tampat untuk menyimpan Project

Contoh: E\JAVA

-  Hilangkan centang pada Create Main Class 

-  Kemudian Klik Finish 

Hasilnya

-  Klik kanan pada <default package>

-  Pilih New -> Pilih JFrame Form

-  Buat Nama Class

Page 27: Laporan Praktikum Bahasa Pemrograman Java DANU ANDIKA(1314370103)

7/21/2019 Laporan Praktikum Bahasa Pemrograman Java DANU ANDIKA(1314370103)

http://slidepdf.com/reader/full/laporan-praktikum-bahasa-pemrograman-java-danu-andika1314370103 27/74

 

23 

Klik Finish

Hasilnya

Page 28: Laporan Praktikum Bahasa Pemrograman Java DANU ANDIKA(1314370103)

7/21/2019 Laporan Praktikum Bahasa Pemrograman Java DANU ANDIKA(1314370103)

http://slidepdf.com/reader/full/laporan-praktikum-bahasa-pemrograman-java-danu-andika1314370103 28/74

 

24 

3.2  Modul 2

Palette Edit Text Variable Name Properties

 jDesktopPane - - Background : Custom

 jLabel1  NPM - -

 jLabel2  NAMA - -

 jLabel3 JK - -

 jLabel4 TGL LAHIR - -

 jLabel5 Alamat - -

 jLabel6 HOBBI - -

 jLabel7  NPM lblnpm -

 jLabel8  NAMA lblnama -

 jLabel9 JK lbljk -

 jLabel10 TGL LAHIR lbltgl -

 jLabel11 Alamat lblalamt -

 jLabel12 HOBBI lblhobi -

 jTextField1 - txtnpm -

 jTextField2 - txtnama -

 jComboBox Pilih cbojk -

 jTextField3 - txttgl -

 jTextArea1 - txtalamat -

 jTextField4 - txthobi -

 jButton1 PROSES Btnproses Event - ActionPerformed

Page 29: Laporan Praktikum Bahasa Pemrograman Java DANU ANDIKA(1314370103)

7/21/2019 Laporan Praktikum Bahasa Pemrograman Java DANU ANDIKA(1314370103)

http://slidepdf.com/reader/full/laporan-praktikum-bahasa-pemrograman-java-danu-andika1314370103 29/74

 

25 

Desain Form

Masukkan kode program pada Button “Proses” 

Klik kanan pada button proses-> Event -> Action -> ActionPerformed

 private void btnprosesActionPerformed(java.awt.event.ActionEvent evt) {

// TODO add your handling code here:

lblnpm.setText(txtnpm.getText());

lblnama.setText(txtnama.getText());

lbljk.setText((String)cbojk.getSelectedItem());

lbltgl.setText(txttgl.getText());

lblalamat.setText(txtalamat.getText());  

lblhobi.setText(txthobi.getText());

txtnpm.setText("");

txtnama.setText("");

cbojk.setSelectedItem("PILIH");

txttgl.setText("");

txthobi.setText("");

txtalamat.setText("");

}

-  Perhatikan Pesan Kesalahan, huruf besar dan kecil sangat

 berpengaruh(Case Sensitif) Run File atau Tekan Shift+F6 

Page 30: Laporan Praktikum Bahasa Pemrograman Java DANU ANDIKA(1314370103)

7/21/2019 Laporan Praktikum Bahasa Pemrograman Java DANU ANDIKA(1314370103)

http://slidepdf.com/reader/full/laporan-praktikum-bahasa-pemrograman-java-danu-andika1314370103 30/74

 

26 

3.3  Modul 3

Palette Edit Text Variable Name

Properties

 jDesktopPane - - Background : Yellow

 jLabel1 INPUT NILAI 1 - -

 jLabel2 INPUT NILAI 2 - -

 jLabel3 HASIL - -

 jTextField1 - txtinput1 -

 jTextField2 - txtinput2 -

 jTextField3 - txthasil Editable : False

 jButton1 +  btntambah Event –  ActionPerformed

 jButton2 -  btnkurang Event –  ActionPerformed

 jButton3 x  btnkali Event –  ActionPerformed

 jButton4 / btnbagi Event –  ActionPerformed

Desain Form

Masukkan code program pada keempat Button:-  Klik Kanan pada Button + -> Events -> Action -> actionPerformed

-  Klik Kanan pada Button - -> Events -> Action -> actionPerformed

-  Klik Kanan pada Button x -> Events -> Action -> actionPerformed

-  Klik Kanan pada Button / -> Events -> Action -> actionPerformed

Page 31: Laporan Praktikum Bahasa Pemrograman Java DANU ANDIKA(1314370103)

7/21/2019 Laporan Praktikum Bahasa Pemrograman Java DANU ANDIKA(1314370103)

http://slidepdf.com/reader/full/laporan-praktikum-bahasa-pemrograman-java-danu-andika1314370103 31/74

 

27 

 private void btntambahActionPerformed(java.awt.event.ActionEvent evt) {

// TODO add your handling code here:

Integer nilai1 = Integer.valueOf(txtinput1.getText());

Integer nilai2 = Integer.valueOf(txtinput2.getText());

Integer Total = nilai1+nilai2;

String Tampil = String.valueOf(Total);

txthasil.setText(Tampil);

}

 private void btnkurangActionPerformed(java.awt.event.ActionEvent evt) {

// TODO add your handling code here:

Integer nilai1 = Integer.valueOf(txtinput1.getText());

Integer nilai2 = Integer.valueOf(txtinput2.getText());

Integer Total = nilai1-nilai2;

String Tampil = String.valueOf(Total);

txthasil.setText(Tampil);

}

 private void btnkaliActionPerformed(java.awt.event.ActionEvent evt) {

// TODO add your handling code here:Integer nilai1 = Integer.valueOf(txtinput1.getText());

Integer nilai2 = Integer.valueOf(txtinput2.getText());

Integer Total = nilai1*nilai2;

String Tampil = String.valueOf(Total);

txthasil.setText(Tampil);

}

 private void btnbagiActionPerformed(java.awt.event.ActionEvent evt) {// TODO add your handling code here:

Float nilai1 = Float.valueOf(txtinput1.getText());

Float nilai2 = Float.valueOf(txtinput2.getText());

Float Total = nilai1/nilai2;

String Tampil = String.valueOf(Total);

txthasil.setText(Tampil); }

Page 32: Laporan Praktikum Bahasa Pemrograman Java DANU ANDIKA(1314370103)

7/21/2019 Laporan Praktikum Bahasa Pemrograman Java DANU ANDIKA(1314370103)

http://slidepdf.com/reader/full/laporan-praktikum-bahasa-pemrograman-java-danu-andika1314370103 32/74

 

28 

3.4  Modul 4

Desain Form

Palette 1 Edit Text Palette 2 Variable Name

Properties

 jDesktop Pane Backgroud: Custom

 jLabel1  Nama Pembeli Text Field txtnama -

 jLabel2 Status Combo Box cbostatus Model : Umum, Member

 jLabel3 Jenis Barang Combo Box cbojenis Model : Pilih, iPad,iPhone, iPod

 jLabel4 Harga Text Field txtharga Editable : False

 jLabel5 Jumlah Text Field txtjumlah -

 jLabel6 Button btnbayar Event –  ActionPerformed

 jLabel7 Diskon Text Field txtdiskon Editable : False

 jLabel8 Total Bayar Text Field txttotal Editable : False

Page 33: Laporan Praktikum Bahasa Pemrograman Java DANU ANDIKA(1314370103)

7/21/2019 Laporan Praktikum Bahasa Pemrograman Java DANU ANDIKA(1314370103)

http://slidepdf.com/reader/full/laporan-praktikum-bahasa-pemrograman-java-danu-andika1314370103 33/74

 

29 

Masukkan kode program:

-  Klik Kanan pada Combo Box Jenis Barang -> Events -> Action ->

ActionPerformed

 private void cbojenisActionPerformed(java.awt.event.ActionEvent evt) {

// TODO add your handling code here:

if (cbojenis.getSelectedItem()=="iPad"){

txtharga.setText("4999000");

}else if(cbojenis.getSelectedItem()=="iPhone"){

txtharga.setText("7999000");

}else if(cbojenis.getSelectedItem()=="iPod"){

txtharga.setText("2999000");

}else{

txtharga.setText("");

}

}

-  Klik Kanan pada Button Bayar -> Events -> Action -> ActionPerformed

 private void btnbayarActionPerformed(java.awt.event.ActionEvent evt) {

// TODO add your handling code here:

int harga=Integer.parseInt(txtharga.getText());

int jumlah=Integer.parseInt(txtjumlah.getText());

long diskon,total,nilaidiskon;

if(cbostatus.getSelectedItem()=="Member"){

diskon=((5*harga)/100);

nilaidiskon=harga-diskon;

total=nilaidiskon*jumlah;

}else{

diskon=0;

Page 34: Laporan Praktikum Bahasa Pemrograman Java DANU ANDIKA(1314370103)

7/21/2019 Laporan Praktikum Bahasa Pemrograman Java DANU ANDIKA(1314370103)

http://slidepdf.com/reader/full/laporan-praktikum-bahasa-pemrograman-java-danu-andika1314370103 34/74

 

30 

nilaidiskon=harga-diskon;

total=nilaidiskon*jumlah;

}

txtdiskon.setText(""+diskon);

txttotal.setText(""+total);

}

-  Perhatikan Pesan Kesalahan, huruf besar dan kecil sangat

 berpengaruh(Case Sensitif) Run File atau Tekan Shift+F6

Page 35: Laporan Praktikum Bahasa Pemrograman Java DANU ANDIKA(1314370103)

7/21/2019 Laporan Praktikum Bahasa Pemrograman Java DANU ANDIKA(1314370103)

http://slidepdf.com/reader/full/laporan-praktikum-bahasa-pemrograman-java-danu-andika1314370103 35/74

 

31 

3.5  Modul 5

Palette Edit Text Variable Name Properties

 jLabel1 PerhitunganGaji

- -

 jLabel2  NIP - -

 jLabel3  Nama - -

 jLabel4 Jabatan - -

 jLabel5 Gaji Pokok - -

 jLabel6 Status - -

 jLabel7 Tunjangan Istri(20% Gaji)

- -

 jLabel8 Jumlah Anak - -

 jLabel9 TunjanganAnak (15%Gaji)

- -

 jLabel10 Gaji Kotor - -

 jLabel11 Pajak (10%Gaji)

- -

 jLabel12 Gaji Bersih - -

 jTextField1 - txtnip -

 jTextField2 - Txtnama -

 jTextField3 - txtgajipokok -

 jTextField4 - txttunjanganistri -

 jTextField5 - txtjumlahanak Event –  Key-KeyReleasedEvent –  Key-KeyTyped

 jTextField6 - txttunjangananak -

 jTextField7 - txtgajikotor -

 jTextField8 - txtpajak -

 jTextField9 - txtgajipbersih -

 jRadioButton1 Menikah opsi1 -

 jRadioButton2 Belum Menikah opsi2 -

 jButtonGroup1 - - -

Page 36: Laporan Praktikum Bahasa Pemrograman Java DANU ANDIKA(1314370103)

7/21/2019 Laporan Praktikum Bahasa Pemrograman Java DANU ANDIKA(1314370103)

http://slidepdf.com/reader/full/laporan-praktikum-bahasa-pemrograman-java-danu-andika1314370103 36/74

 

32 

Desain Form

-  Tambahkan komponen jButtonGroup1 untuk menggabungkan kedua

komponen jRadioButton. Ubah properti buttonGroup pada kedua

 jRadioButton.

Klik jRadioButton1

Pada properties buttonGroup:

 jRadioButton1: buttonGroup1

Klik jRadioButton2

Pada properties buttonGroup:

 jRadioButton2: buttonGroup1

 jButton1 Clear btnbersih Event –  Mouse –  MouseClicked

 jButton2 Hitung btnhitung Event –  Mouse –  MouseClicked

 jComboBox1 - cmbjabatan Model :-Direktur-Manager-Kabag-Sekretaris-Karyawan-Office Boy

Page 37: Laporan Praktikum Bahasa Pemrograman Java DANU ANDIKA(1314370103)

7/21/2019 Laporan Praktikum Bahasa Pemrograman Java DANU ANDIKA(1314370103)

http://slidepdf.com/reader/full/laporan-praktikum-bahasa-pemrograman-java-danu-andika1314370103 37/74

 

33 

-  Pada Tab Source Code, masukkan code program berikut:

 package GUI;

/**

*

* @author admin

*/

 public class Modul5 extends javax.swing.JFrame {

int gajipokok,gajikotor,pajak,gajibersih;

int tunjanganistri,tunjangananak,jumlahanak;

String t_istri, t_anak;

String s_gajikotor,s_pajak,s_gajibersih;

/** Creates new form Modul5 */

 public Modul5() {

setTitle("Form Perhitungan Gaji Pegawai");

initComponents();

}-  Pada bagian dibawah initComponents();} masukkan kode program

 berikut:

 private void Gaji(){

int pilihan=cmbjabatan.getSelectedIndex();

switch(pilihan){

case 0:

txtgajipokok.setText("7500000"); break;

case 1:

txtgajipokok.setText("5000000");

 break;

Page 38: Laporan Praktikum Bahasa Pemrograman Java DANU ANDIKA(1314370103)

7/21/2019 Laporan Praktikum Bahasa Pemrograman Java DANU ANDIKA(1314370103)

http://slidepdf.com/reader/full/laporan-praktikum-bahasa-pemrograman-java-danu-andika1314370103 38/74

 

34 

case 2:

txtgajipokok.setText("3000000");

 break;

case 3:

txtgajipokok.setText("2000000");

 break;

case 4:

txtgajipokok.setText("1200000");

 break;

case 5:

txtgajipokok.setText("750000");

 break;

}

}

 private void TunjanganAnak(){gajipokok = Integer.valueOf(txtgajipokok.getText());

 jumlahanak= Integer.valueOf(txtjumlahanak.getText());

if(jumlahanak <= 2){

tunjangananak= ((15*gajipokok)/100) * jumlahanak;

}else if(jumlahanak > 2){

tunjangananak=((15*gajipokok)/100) * 2;

}else{tunjangananak=0;

}

t_anak = String.valueOf(tunjangananak);

txttunjangananak.setText(t_anak);

}

 private void Menikah(){

txttunjanganistri.setEnabled(true);

Page 39: Laporan Praktikum Bahasa Pemrograman Java DANU ANDIKA(1314370103)

7/21/2019 Laporan Praktikum Bahasa Pemrograman Java DANU ANDIKA(1314370103)

http://slidepdf.com/reader/full/laporan-praktikum-bahasa-pemrograman-java-danu-andika1314370103 39/74

 

35 

txttunjangananak.setEnabled(true);

txtjumlahanak.setEnabled(true);

gajipokok = Integer.valueOf(txtgajipokok.getText());

tunjanganistri=(20*gajipokok)/100;

t_istri=String.valueOf(tunjanganistri);

txttunjanganistri.setText(t_istri);

TunjanganAnak();

}

 private void BelumMenikah(){

tunjanganistri=0;

tunjangananak=0;

 jumlahanak=0;

txttunjanganistri.setText("0");

txttunjangananak.setText("0");

txtjumlahanak.setText("0");

txttunjanganistri.setEnabled(false);

txttunjangananak.setEnabled(false);

txtjumlahanak.setEnabled(false);}

 private void Total(){

gajipokok=Integer.valueOf(txtgajipokok.getText());

if(opsi1.isSelected()==true){

gajikotor= gajipokok + tunjangananak + tunjanganistri;

}else{

gajikotor= gajipokok;}

 pajak=(gajikotor*10)/100;

gajibersih=gajikotor-pajak;

s_gajikotor=String.valueOf(gajikotor);

s_pajak=String.valueOf(pajak);

s_gajibersih=String.valueOf(gajibersih);

txtgajikotor.setText(s_gajikotor);

Page 40: Laporan Praktikum Bahasa Pemrograman Java DANU ANDIKA(1314370103)

7/21/2019 Laporan Praktikum Bahasa Pemrograman Java DANU ANDIKA(1314370103)

http://slidepdf.com/reader/full/laporan-praktikum-bahasa-pemrograman-java-danu-andika1314370103 40/74

 

36 

txtpajak.setText(s_pajak);

txtgajibersih.setText(s_gajibersih);

}

 private void Total(){

gajipokok=Integer.valueOf(txtgajipokok.getText());

if(opsi1.isSelected()==true){

gajikotor= gajipokok + tunjangananak + tunjanganistri;

}else{

gajikotor= gajipokok;

}

 pajak=(gajikotor*10)/100;

gajibersih=gajikotor-pajak;

s_gajikotor=String.valueOf(gajikotor);

s_pajak=String.valueOf(pajak);

s_gajibersih=String.valueOf(gajibersih);

txtgajikotor.setText(s_gajikotor);

txtpajak.setText(s_pajak);txtgajibersih.setText(s_gajibersih);

}

 private void BersihTeks(){

gajipokok=0;

gajikotor=0;

 pajak=0;

tunjanganistri=0;tunjangananak=0;

 jumlahanak=0;

txtgajipokok.setText("0");

txtjumlahanak.setText("0");

txttunjanganistri.setText("0");

txttunjangananak.setText("0");

txtgajikotor.setText("0");

Page 41: Laporan Praktikum Bahasa Pemrograman Java DANU ANDIKA(1314370103)

7/21/2019 Laporan Praktikum Bahasa Pemrograman Java DANU ANDIKA(1314370103)

http://slidepdf.com/reader/full/laporan-praktikum-bahasa-pemrograman-java-danu-andika1314370103 41/74

 

37 

txtpajak.setText("0");

txtgajibersih.setText("0");

}

-  Pada Tab Desain, Klik kanan pada JFrame, lalu pilih Events->

Windows-> windowOpened 

-  Lalu Masukkan kan Method Berikut:

 private void formWindowOpened(java.awt.event.WindowEvent evt) {

BelumMenikah();

}

-  Klik kanan pada cmbjabatan, lalu pilih Event->Item->

itemStateChanged

-  Masukkan kode berikut: 

 private void cmbjabatanItemStateChanged(java.awt.event.ItemEvent

evt) {

// TODO add your handling code here:BersihTeks();

Gaji();

if(opsi1.isSelected()==true){

Menikah();

}else{

BelumMenikah();

}}

-  Klik kanan pada jRadioButton1 Menikah (opsi1), lalu pilih Event ->

Action -> actionPerformed

-  Masukkan kode berikut: 

 private void opsi1ActionPerformed(java.awt.event.ActionEvent evt) {

// TODO add your handling code here:

Menikah();

Page 42: Laporan Praktikum Bahasa Pemrograman Java DANU ANDIKA(1314370103)

7/21/2019 Laporan Praktikum Bahasa Pemrograman Java DANU ANDIKA(1314370103)

http://slidepdf.com/reader/full/laporan-praktikum-bahasa-pemrograman-java-danu-andika1314370103 42/74

 

38 

}

-  Klik kanan pada jRadioButton1 Belum Menikah (opsi2), lalu pilih

Event -> Action -> actionPerformed

Masukkan kode berikut: 

 private void opsi2ActionPerformed(java.awt.event.ActionEvent evt) {

// TODO add your handling code here:

BelumMenikah();

}

-  Klik kanan pada txtjumlahanak, lalu pilih Event -> Key ->

KeyReleased

Masukkan kode berikut: 

 private void txtjumlahanakKeyReleased(java.awt.event.KeyEvent evt)

{

TunjanganAnak();

}

-  Klik kanan pada btnbersih pilih Event -> Mouse -> MouseClicked 

-  Masukkan kode berikut:

 private void btnbersihMouseClicked(java.awt.event.MouseEvent evt){

BersihTeks();

}

-  Klik kanan pada btnhitung pilih Event-> Mouse -> MouseClicked 

-  Masukkan kode berikut:

 private void btnhitungMouseClicked(java.awt.event.MouseEvent evt){

Total();

}

3.6  Modul 6

-  Buat Form baru, Beri nama Modul6

Page 43: Laporan Praktikum Bahasa Pemrograman Java DANU ANDIKA(1314370103)

7/21/2019 Laporan Praktikum Bahasa Pemrograman Java DANU ANDIKA(1314370103)

http://slidepdf.com/reader/full/laporan-praktikum-bahasa-pemrograman-java-danu-andika1314370103 43/74

 

39 

Palette Edit Text Variable Name

Properties

 jDesktopPane - - Background : Custom

 jMenuBar - - -

Desain Form

-  Tambahkan JMenuItem di menu File, klik kanan menu File -> Add From

Palette -> Menu Item

-  Lalu, Ubah teks, Klik kanan JMenuItem1 Edit Text menjadi New

-  Ulangi seperti langkah sebelumnya 

Page 44: Laporan Praktikum Bahasa Pemrograman Java DANU ANDIKA(1314370103)

7/21/2019 Laporan Praktikum Bahasa Pemrograman Java DANU ANDIKA(1314370103)

http://slidepdf.com/reader/full/laporan-praktikum-bahasa-pemrograman-java-danu-andika1314370103 44/74

 

40 

-  Pada Tab Source Code, masukkan kode berikut: 

 package GUI;

import java.awt.Dimension;

import javax.swing.JInternalFrame;

import javax.swing.JOptionPane;

import javax.swing.JPanel;

import javax.swing.*;

 public class Modul6 extends javax.swing.JFrame {

Page 45: Laporan Praktikum Bahasa Pemrograman Java DANU ANDIKA(1314370103)

7/21/2019 Laporan Praktikum Bahasa Pemrograman Java DANU ANDIKA(1314370103)

http://slidepdf.com/reader/full/laporan-praktikum-bahasa-pemrograman-java-danu-andika1314370103 45/74

 

41 

 private int jml;

 private String judul;

/** Creates new form Modul6 */

 public Modul6() {

setTitle("MDI Form");

setExtendedState(MAXIMIZED_BOTH);

initComponents();

}

 private void Modul6(){

try{

JInternalFrame jin = new JInternalFrame(judul,false,true,true);

 jin.setDefaultCloseOperation(DISPOSE_ON_CLOSE);

JPanel pn = new JPanel();

 jin.setBounds(10,10,500,500);

 jDesktopPane1.add(jin);

 jin.setVisible(true);

}catch (Exception e){

JOptionPane.showMessageDialog(null, e);}

}

-  Kembali ke Tab Design

-  Klik kanan pada menu New -> Events -> Action -> actionPerformed 

-  Masukkan kode program berikut:

 private void jMenuItem1ActionPerformed(java.awt.event.ActionEvent evt){

 jml =jml + 1;

 judul = "From Baru "+jml;

Modul6();

}

-  Klik kanan pada menu Keluar -> Events -> Action -> actionPerformed 

-  Masukkan kode program berikut:

Page 46: Laporan Praktikum Bahasa Pemrograman Java DANU ANDIKA(1314370103)

7/21/2019 Laporan Praktikum Bahasa Pemrograman Java DANU ANDIKA(1314370103)

http://slidepdf.com/reader/full/laporan-praktikum-bahasa-pemrograman-java-danu-andika1314370103 46/74

 

42 

 private void jMenuItem2ActionPerformed(java.awt.event.ActionEvent evt)

{

System.exit(0);

}

-  Tambahkan JInternalFrame Form, Klik kanan pada Nama Package ->

Pilih JInternalFrame Form, isikan Class name “IFModul2”, Finish 

-  Ulangi langkah diatas Untuk setiap Modul (Modul2-Modul5) IFModul2-

IFModul5 

-  Setelah selesai, Copy setiap DesktopPane (Modul2-Modul5),

Buka kembali modul, Pada Navigator Klik Kanan DesktopPane->Copy

(Ctrl+c) 

-  Buka IFModul, Paste (Ctrl+v)

-  Pada Properties IFModul, Beri centang pada Closable

-  Setelah Semua IFModul Selesai, kembali ke Modul6

Page 47: Laporan Praktikum Bahasa Pemrograman Java DANU ANDIKA(1314370103)

7/21/2019 Laporan Praktikum Bahasa Pemrograman Java DANU ANDIKA(1314370103)

http://slidepdf.com/reader/full/laporan-praktikum-bahasa-pemrograman-java-danu-andika1314370103 47/74

 

43 

-  Klik menu Data, lalu klik kanan pada MenuItem Modul2->Event->

Action->actionPerformed

-  Masukkan Kode Berikut: 

 private void jMenuItem3ActionPerformed(java.awt.event.ActionEvent evt)

{

IFModul2 form2 = new IFModul2();

 jDesktopPane1.add(form2);

Dimension parentSize = jDesktopPane1.getSize();

Dimension childSize = form2.getSize();

form2.setLocation((parentSize.width - childSize.width)/2,

(parentSize.height - childSize.height)/2);

form2.setVisible(true);

-  Lakukan langkah yang sama untuk setiap modul (IFModul2-IFModul5 

Page 48: Laporan Praktikum Bahasa Pemrograman Java DANU ANDIKA(1314370103)

7/21/2019 Laporan Praktikum Bahasa Pemrograman Java DANU ANDIKA(1314370103)

http://slidepdf.com/reader/full/laporan-praktikum-bahasa-pemrograman-java-danu-andika1314370103 48/74

 

44 

3.7  Modul 7

-  Buat database dari MySql dengan Nama Database “dbjava” dan Table

“tcustomer” 

-  Buat Package baru dengan nama “koneksi” 

-  Pada Package koneksi, Klik kanan pada package->New->JavaClass  beri

nama “ClassDB” 

-  Tambahkan Library MySql, klik kanan pada Libraries->Add Library->

MySQL JDBC Driver -> Add Library 

-  Pada ClassDB, masukkan kode berikut:

 package koneksi;

import java.sql.Connection;

import java.sql.DriverManager;import java.sql.SQLException;

/**

*admin

*/

 public class ClassDB {

 private static Connection koneksi;

 public static Connection getkoneksi(){

Page 49: Laporan Praktikum Bahasa Pemrograman Java DANU ANDIKA(1314370103)

7/21/2019 Laporan Praktikum Bahasa Pemrograman Java DANU ANDIKA(1314370103)

http://slidepdf.com/reader/full/laporan-praktikum-bahasa-pemrograman-java-danu-andika1314370103 49/74

 

45 

if(koneksi==null){

try{

String url=new String();

String user=new String();

String password=new String();

url="jdbc:mysql://localhost:3306/dbjava";

user="root";

 password="";

DriverManager.registerDriver(new com.mysql.jdbc.Driver());

koneksi=DriverManager.getConnection(url,user,password);

}catch (SQLException t){

System.out.println("Error membuat koneksi");

}

}

return koneksi;

}

}

-  Buat Form Baru, klik kanan nama Package->JFrame Form-> beri nama

Modul7 

Palette Edit Text Variable Name Properties

 jDesktopPane - - -Background: Red-Tittle Border: DataCutomer

 jLabel1 ID - -

 jLabel2  Nama - -

 jLabel3  No Hp - -

 jLabel4 Alamat - -

 jTextField1 - txtid -

 jTextField2 - txtnama -

 jTextField3 - txthp -

Page 50: Laporan Praktikum Bahasa Pemrograman Java DANU ANDIKA(1314370103)

7/21/2019 Laporan Praktikum Bahasa Pemrograman Java DANU ANDIKA(1314370103)

http://slidepdf.com/reader/full/laporan-praktikum-bahasa-pemrograman-java-danu-andika1314370103 50/74

 

46 

 jTextArea - txtalamat -

 jButton1 - btnsave -

 jButton2 - btnclear -

Desain Form

-  Pada Tab Source Code, masukkan kode program berikut:

 package GUI;

import java.sql.*;

import javax.swing.JOptionPane;

import koneksi.ClassDB;

/***

* @author admin

*/

 public class Modul7 extends javax.swing.JFrame {

/** Creates new form Modul7 */

Page 51: Laporan Praktikum Bahasa Pemrograman Java DANU ANDIKA(1314370103)

7/21/2019 Laporan Praktikum Bahasa Pemrograman Java DANU ANDIKA(1314370103)

http://slidepdf.com/reader/full/laporan-praktikum-bahasa-pemrograman-java-danu-andika1314370103 51/74

 

47 

 public Modul7() {

initComponents();

 bacaid();

txtid.setEnabled(false);

 btnsave.setEnabled(false);

}

 private void bacaid(){

int kode=0;

try{

Class.forName("com.mysql.jdbc.Driver");

try(Connection cn =

DriverManager.getConnection("jdbc:mysql://localhost/dbjava","root","");

Statement smt = cn.createStatement()){

String sql = "SELECT max(Id) as kd FROM tcustomer";

ResultSet rs = smt.executeQuery(sql);

if(rs.next()){

kode=rs.getInt("kd");}else{

}

txtid.setText("000" +(kode+1));

}

}catch(ClassNotFoundException | SQLException e){

}

}

 private void Simpan(){

String id=this.txtid.getText();

String nama=this.txtnama.getText();

String nohp=this.txthp.getText();

String alamat=this.txtalamat.getText();

Page 52: Laporan Praktikum Bahasa Pemrograman Java DANU ANDIKA(1314370103)

7/21/2019 Laporan Praktikum Bahasa Pemrograman Java DANU ANDIKA(1314370103)

http://slidepdf.com/reader/full/laporan-praktikum-bahasa-pemrograman-java-danu-andika1314370103 52/74

 

48 

String st="Free";

if ("".equals(this.txtid.getText())||("".equals(this.txtnama.getText()))||

("".equals(this.txthp.getText()))||

("".equals(this.txtalamat.getText())))

{

JOptionPane.showMessageDialog(this,"Lengkapi data");

}else{

try{

Connection c = ClassDB.getkoneksi();

Statement s=c.createStatement();

String sql = "Insert into tcustomer values (?,?,?,?)";

try(com.mysql.jdbc.PreparedStatement

 p=(com.mysql.jdbc.PreparedStatement)c.prepareStatement(sql))

{

 p.setString(1,id);

 p.setString(2,nama);

 p.setString(3,nohp); p.setString(4,alamat);

 p.executeUpdate();

}

JOptionPane.showMessageDialog(this,"Sukses Tambah Data");

}catch(SQLException e){

System.out.println("Terjadi kesalahan"+e);

}finally{Bersih();

}

}

}

-  Masukkan juga Method berikut:

 private void Bersih(){

 bacaid();

Page 53: Laporan Praktikum Bahasa Pemrograman Java DANU ANDIKA(1314370103)

7/21/2019 Laporan Praktikum Bahasa Pemrograman Java DANU ANDIKA(1314370103)

http://slidepdf.com/reader/full/laporan-praktikum-bahasa-pemrograman-java-danu-andika1314370103 53/74

 

49 

txtnama.setText("");

txthp.setText("");

txtalamat.setText("");

 btnsave.setEnabled(false);

}

-  Klik kanan Pada btnsave->Event->Action->actionPerformed

Masukkan Method berikut:

Simpan();

-  Klik kanan Pada btnclear->Event->Action->actionPerformed

Masukkan Method berikut:

Bersih();

-  Klik kanan Pada TextField txtnama ->Event->Key->KeyTyped

Masukkan kode berikut:

btnsave.setEnabled(true);

btnclear.setEnabled(true);

-  Run File(Shift+F6)

Page 54: Laporan Praktikum Bahasa Pemrograman Java DANU ANDIKA(1314370103)

7/21/2019 Laporan Praktikum Bahasa Pemrograman Java DANU ANDIKA(1314370103)

http://slidepdf.com/reader/full/laporan-praktikum-bahasa-pemrograman-java-danu-andika1314370103 54/74

 

50 

3.8  Modul 8

-  Buat database dari MySql dengan masih di Database yang sama yaitu

“dbjava” dengan nama Table “tpenjualan” 

-  Buat Form Baru dengan nama “Modul8” di package yang sama seperti

Modul sebelumnya 

Palette Edit Text Variable Name Properties

 jDesktopPane - - Background: Custom

 jLabel1 Tanggal - -

 jLabel2 Invoice - -

 jLabel3 Id Customer - -

 jLabel4  Nama - -

 jLabel5  No Hp - -

 jLabel6 Alamat - -

 jLabel7 StatusMember

- -

 jLabel8 Jenis Barang - -

 jLabel9 Harga - -

 jLabel10 Jumlah - -

 jLabel11 Diskon - -

 jLabel12 Total Bayar - -

 jTextField1 - txttanggal -

 jTextField2 - txtinvoice -

Page 55: Laporan Praktikum Bahasa Pemrograman Java DANU ANDIKA(1314370103)

7/21/2019 Laporan Praktikum Bahasa Pemrograman Java DANU ANDIKA(1314370103)

http://slidepdf.com/reader/full/laporan-praktikum-bahasa-pemrograman-java-danu-andika1314370103 55/74

 

51 

Desain Form

-  Pada Tab Source Code, masukkan kode program berikut:

 package GUI;

import java.awt.HeadlessException;

 jTextField3 - txtid -

 jTextField4 - txtnama -

 jTextField5 - txthp -

 jTextArea1 - txtalamat -

 jComboBox1 - cbostatus -

 jComboBox2 - cbojenis -

 jTextField6 - txtharga -

 jTextField7 - txtjumlah -

 jTextField8 - txtdiskon -

 jTextField9 - txttotal -

 jButton1 Bayar btnbayar -

 jButton2 Simpan btnsimpan -

Page 56: Laporan Praktikum Bahasa Pemrograman Java DANU ANDIKA(1314370103)

7/21/2019 Laporan Praktikum Bahasa Pemrograman Java DANU ANDIKA(1314370103)

http://slidepdf.com/reader/full/laporan-praktikum-bahasa-pemrograman-java-danu-andika1314370103 56/74

 

52 

import java.sql.*;

import java.text.SimpleDateFormat;

import java.util.Date;

import javax.swing.JOptionPane;

import koneksi.ClassDB;

/**

*

* @author admin

*/

 public class Modul8 extends javax.swing.JFrame {

/** Creates new form Modul8 */

 public Modul8() {

initComponents();

Invoice();

Date current = new Date ();SimpleDateFormat frmt = new SimpleDateFormat ("dd/MM/yyyy");

String dateString1 = frmt.format(current);

txttanggal.setText(dateString1);

}

 private void Invoice(){

txtinvoice.setEnabled(false);

try {Class.forName("com.mysql.jdbc.Driver");

try (Connection cn =

DriverManager.getConnection("jdbc:mysql://localhost:3306/dbjava","root",

"");

Statement smt = cn.createStatement()){

Page 57: Laporan Praktikum Bahasa Pemrograman Java DANU ANDIKA(1314370103)

7/21/2019 Laporan Praktikum Bahasa Pemrograman Java DANU ANDIKA(1314370103)

http://slidepdf.com/reader/full/laporan-praktikum-bahasa-pemrograman-java-danu-andika1314370103 57/74

 

53 

String sql = "SELECT invoice as iv FROM tpenjualan Order by

invoice desc";

ResultSet rs = smt.executeQuery(sql);

if(rs.next()){

int invo=

Integer.parseInt(rs.getString("iv"))+1;

txtinvoice.setText(Integer.toString(invo));

}

else{

int invo=1400;

txtinvoice.setText(Integer.toString(invo));

}

rs.close();

}

}catch (ClassNotFoundException | SQLException e){

}

}

 private void CariID(){try{

Class.forName("com.mysql.jdbc.Driver");

try(Connection

cn=DriverManager.getConnection("jdbc:mysql://localhost/dbjava","root",""

);

Statement smt=cn.createStatement()){

String sql ="SELECT*FROM tcustomer whereid="+txtid.getText()+"";

ResultSet rs=smt.executeQuery(sql);

if(rs.next()){

txtnama.setText(rs.getString("Nama"));

txthp.setText(rs.getString("nohp"));

txtalamat.setText(rs.getString("alamat"));

}else{

Page 58: Laporan Praktikum Bahasa Pemrograman Java DANU ANDIKA(1314370103)

7/21/2019 Laporan Praktikum Bahasa Pemrograman Java DANU ANDIKA(1314370103)

http://slidepdf.com/reader/full/laporan-praktikum-bahasa-pemrograman-java-danu-andika1314370103 58/74

 

54 

JOptionPane.showMessageDialog(null,"Id Customer Tidak

Terdaftar","INFORMASI",JOptionPane.INFORMATION_MESSAGE);

txtid.setText(null);

txtnama.setText(null);

txtid.requestFocus();

}

}

}catch(ClassNotFoundException|SQLException|HeadlessException e){

}

}

 private void Simpan(){

String iv=this.txtinvoice.getText();

String tgl=this.txttanggal.getText();toString();

String id=this.txtid.getText();

String nama=this.txtnama.getText();

String status=this.cbostatus.getSelectedItem().toString();

String barang=this.cbojenis.getSelectedItem().toString();String harga = this.txtharga.getText();

String jumlah=this.txtjumlah.getText();

String diskon=this.txtdiskon.getText();

String bayar=this.txttotal.getText();

String st="Free";

if("".equals(this.txtinvoice.getText())||("".equals(this.txttanggal.getText()))||

("".equals(this.txtid.getText()))||

("".equals(this.txtnama.getText()))||

("".equals(this.cbostatus.getSelectedItem().toString()))||

("".equals(this.cbojenis.getSelectedItem().toString()))||

("".equals(this.txtharga.getText()))||

("".equals(this.txtjumlah.getText()))||

Page 59: Laporan Praktikum Bahasa Pemrograman Java DANU ANDIKA(1314370103)

7/21/2019 Laporan Praktikum Bahasa Pemrograman Java DANU ANDIKA(1314370103)

http://slidepdf.com/reader/full/laporan-praktikum-bahasa-pemrograman-java-danu-andika1314370103 59/74

 

55 

("".equals(this.txtdiskon.getText()))||

("".equals(this.txttotal.getText())))

{ JOptionPane.showMessageDialog(this,"Lengkapi data");

}else{

try{

Connection c=ClassDB.getkoneksi();

Statement s=c.createStatement();

String sql="Insert into tpenjualan values(?,?,?,?,?,?,?,?,?,?)";

try(com.mysql.jdbc.PreparedStatement

 p=(com.mysql.jdbc.PreparedStatement)c.prepareStatement(sql))

{

 p.setString(1,iv);

 p.setString(2,tgl);

 p.setString(3,id);

 p.setString(4,nama);

 p.setString(5,status);

 p.setString(6,barang); p.setString(7,harga);

 p.setString(8,jumlah);

 p.setString(9,diskon);

 p.setString(10,bayar);

 p.executeUpdate();

}

JOptionPane.showMessageDialog(this,"Invoice Tersimpan");}catch(SQLException e){

System.out.println("Gagal Menyimpan"+e);

}finally{

Bersih();

}}

}

Page 60: Laporan Praktikum Bahasa Pemrograman Java DANU ANDIKA(1314370103)

7/21/2019 Laporan Praktikum Bahasa Pemrograman Java DANU ANDIKA(1314370103)

http://slidepdf.com/reader/full/laporan-praktikum-bahasa-pemrograman-java-danu-andika1314370103 60/74

 

56 

 private void Bersih(){

Invoice();

txtid.setText(null);

txtnama.setText(null);

txthp.setText(null);

txtalamat.setText(null);

cbostatus.setSelectedItem("Pilih");

txtharga.setText(null);

txtjumlah.setText(null);

txtdiskon.setText(null);

txttotal.setText(null);

}

-  Klik kanan pada cbojenis-> Events->Action->actionPerformed

 private void cbojenisActionPerformed(java.awt.event.ActionEvent evt) {

// TODO add your handling code here:

if(cbojenis.getSelectedItem()=="IPad"){

txtharga.setText("4999000");}else if(cbojenis.getSelectedItem()=="IPhone"){

txtharga.setText("7999000");

}else if(cbojenis.getSelectedItem()=="IPod"){

txtharga.setText("2999000");

}else{

txtharga.setText("");

}}

-  Klik kanan pada btnbayar-> Events->Action->actionPerformed 

 private void btnbayarActionPerformed(java.awt.event.ActionEvent evt) {

int harga=Integer.parseInt(txtharga.getText());

int jumlah=Integer.parseInt(txtjumlah.getText());

int diskon,nilaidiskon,total;

Page 61: Laporan Praktikum Bahasa Pemrograman Java DANU ANDIKA(1314370103)

7/21/2019 Laporan Praktikum Bahasa Pemrograman Java DANU ANDIKA(1314370103)

http://slidepdf.com/reader/full/laporan-praktikum-bahasa-pemrograman-java-danu-andika1314370103 61/74

 

57 

if(cbostatus.getSelectedItem()=="Silver"){

diskon=((5*harga)/100);

nilaidiskon=harga-diskon;

total=(nilaidiskon*jumlah);

}else{

diskon=((20*harga)/100);

nilaidiskon=harga-diskon;

total=(nilaidiskon*jumlah);

}

txtdiskon.setText(""+diskon);

txttotal.setText(""+total);

}

-  Klik kanan pada btnbayar->Events->Mouse->mouseClicked 

 private void txtnamaMouseClicked(java.awt.event.MouseEvent evt) {

// TODO add your handling code here:

CariID();

}

Klik kanan pada btnbayar->Events->Mouse->mouseReleased  private void txtnamaMouseReleased(java.awt.event.MouseEvent evt) {

// TODO add your handling code here:

CariID();

}

-  Klik kanan pada btnsimpan->Events->Action->actionPerformed 

 private void btnsimpanActionPerformed(java.awt.event.ActionEvent evt) {

// TODO add your handling code here:Simpan();

Bersih();

}

-  Run File(Shift+F6)

Page 62: Laporan Praktikum Bahasa Pemrograman Java DANU ANDIKA(1314370103)

7/21/2019 Laporan Praktikum Bahasa Pemrograman Java DANU ANDIKA(1314370103)

http://slidepdf.com/reader/full/laporan-praktikum-bahasa-pemrograman-java-danu-andika1314370103 62/74

 

58 

BAB IV

Analisa Hasil Percobaan

4.1 

Analisa Modul 2

Analisa: Ketika di tekan Button Proses, program akan memindahkan

input(txtnpm,txtnama,cbojk,txttgl,txtalamat dan txthobi)  ke  Label

(lblnpm,lblnama,lbljk,lbljk,lbltgl,lblalamat dan lblhobi) 

4.2  Analisa Modul 3

Page 63: Laporan Praktikum Bahasa Pemrograman Java DANU ANDIKA(1314370103)

7/21/2019 Laporan Praktikum Bahasa Pemrograman Java DANU ANDIKA(1314370103)

http://slidepdf.com/reader/full/laporan-praktikum-bahasa-pemrograman-java-danu-andika1314370103 63/74

 

59 

Analisa:

-Ketika di Tekan Button (+),(-),(x), program akan melakukan perhitungan

Aritmatika seperti yang telah di deklarasikan, input pertama sebagai

nilai1(Integer) dan input kedua sebagai nilai2(Integer) dan Di tampilkan

dengan Sintax “Tampil” 

Integer nilai1 = Integer.valueOf(txtinput1.getText());

Integer nilai2 = Integer.valueOf(txtinput2.getText());

Integer Total = nilai1+nilai2;

String Tampil = String.valueOf(Total);

txthasil.setText(Tampil);

- Ketika di Tekan Button (/) input pertama sebagai nilai1(Float) dan input

kedua sebagai nilai2(Float) dan Di tampilkan dengan Sintax “Tampil” untuk

menampilkan Bilangan Berkoma 

Float nilai1 = Float.valueOf(txtinput1.getText());

Float nilai2 = Float.valueOf(txtinput2.getText());

Float Total = nilai1/nilai2;

String Tampil = String.valueOf(Total);

txthasil.setText(Tampil);

Page 64: Laporan Praktikum Bahasa Pemrograman Java DANU ANDIKA(1314370103)

7/21/2019 Laporan Praktikum Bahasa Pemrograman Java DANU ANDIKA(1314370103)

http://slidepdf.com/reader/full/laporan-praktikum-bahasa-pemrograman-java-danu-andika1314370103 64/74

 

60 

4.3  Analisa Modul 4

Analisa:

-  Jika cbojenis Barang:

iPhone, maka txtharga akan menampilkan Harga=7999000

iPad, maka txtharga akan menampilkan Harga=4999000

iPod, maka txtharga akan menampilkan Harga=2999000

-  Ketika ditekan Button Bayar, maka Program akan melakukan proses:

Jika “Member” dan “iPhone” 

txtdiskon=0,05*7999000

txttotal=7999000*jumlah-txtdiskon

Jika “Umum” dan “iPhone” 

txtdiskon=0

txttotal=7999000*jumlah

Page 65: Laporan Praktikum Bahasa Pemrograman Java DANU ANDIKA(1314370103)

7/21/2019 Laporan Praktikum Bahasa Pemrograman Java DANU ANDIKA(1314370103)

http://slidepdf.com/reader/full/laporan-praktikum-bahasa-pemrograman-java-danu-andika1314370103 65/74

 

61 

4.4  Analisa Modul 5

Analisa:

-  Jika cbojabatan dipilih:

Direktur, maka txtgaji akan menampilkan =7500000

Manager, maka txtgaji akan menampilkan =5000000

Kabag, maka txtgaji akan menampilkan =3000000

Sekretaris, maka txtgaji akan menampilkan =2000000

Karyawan, maka txtgaji akan menampilkan =1200000

Office Boy, maka txtgaji akan menampilkan =750000

-  Jika opsi Status:

opsi 1 Menikah, maka

txtjumlahanak Enable=True

txttunjanganistri Enable=True

opsi2, Belum menikah, maka

txtjumlahanak Enable=False 

-  tunjanganistri=(20*gajipokok)/100

-  tunjangananak=((15*gajipokok)/100)* jumlahanak

Ketika ditekan Button Hitung

-  Jika Status “Menikah” jumlah Anak “2”

tunjangan istri=1500000

tunjangan anak=2250000

Page 66: Laporan Praktikum Bahasa Pemrograman Java DANU ANDIKA(1314370103)

7/21/2019 Laporan Praktikum Bahasa Pemrograman Java DANU ANDIKA(1314370103)

http://slidepdf.com/reader/full/laporan-praktikum-bahasa-pemrograman-java-danu-andika1314370103 66/74

 

62 

txtgajikotor =txtgajipokok+txttunjanganistri+txttunjangananak

txtgajikotor =7500000+1500000+2250000

= 11250000

 pajak = Gajikotor*0,1

=1125000

gaji bersih = 11250000 –  1125000

= 10125000

Jika Status “Belum Menikah” 

Gaji Bersih = Gajipokok - Gajipokok*0,1

= 7500000-750000

= 6750000

-  Button Clear akan membersihkan data pada Form

Page 67: Laporan Praktikum Bahasa Pemrograman Java DANU ANDIKA(1314370103)

7/21/2019 Laporan Praktikum Bahasa Pemrograman Java DANU ANDIKA(1314370103)

http://slidepdf.com/reader/full/laporan-praktikum-bahasa-pemrograman-java-danu-andika1314370103 67/74

 

63 

4.5  Analisa Modul 6

Analisa

-  Ketika Dipilih menu File, maka program akan mengeksekusi

 jml =jml + 1;

 judul = "From Baru "+jml;

Modul6();

-  Ketika diclick menu item “Modul2”, maka program akan memanggil

Form IFModul2, dan begitu seterusnya untuk setiap modulnya(2-5)

-  Form (IFModul2-IFModul5) tidak bisa dijalankan apabila tidak

menjalankan Form Induknya terlebih dahulu.

Page 68: Laporan Praktikum Bahasa Pemrograman Java DANU ANDIKA(1314370103)

7/21/2019 Laporan Praktikum Bahasa Pemrograman Java DANU ANDIKA(1314370103)

http://slidepdf.com/reader/full/laporan-praktikum-bahasa-pemrograman-java-danu-andika1314370103 68/74

 

64 

4.6  Analisa Modul 7

Analisa:

-  Koneksikan ke Database menggunakan Xammp dan Library MySQL JDBC

Saat Load, btnsave akan bernilai Enable=False, ketika txtnama diinputkan

maka btnsave akan berubah menjadi Enable=True

-  txtid akan otomatis terisi

"SELECT max(Id) as kd FROM tcustomer"

-  Program akan menambahkan Digit terakhir yg diambil dari Field Id dan

menampilkan sebagai kd di table bayangan pada database dan

ditambahakan 1, berikut syntax programnya

int kode=0;

try{

Class.forName("com.mysql.jdbc.Driver");

try(Connection cn =

DriverManager.getConnection("jdbc:mysql://localhost/dbjava","root","");

Statement smt = cn.createStatement()){

String sql = "SELECT max(Id) as kd FROM tcustomer";

ResultSet rs = smt.executeQuery(sql);if(rs.next()){

kode=rs.getInt("kd");

}else{

}

txtid.setText("000" +(kode+1));

}

}catch(ClassNotFoundException | SQLException e){}

-  Baris berikut adalah deklarasi dari nama

host”localhost”,database”dbjava”,username”root”,password””  

("jdbc:mysql://localhost/dbjava","root","");

Page 69: Laporan Praktikum Bahasa Pemrograman Java DANU ANDIKA(1314370103)

7/21/2019 Laporan Praktikum Bahasa Pemrograman Java DANU ANDIKA(1314370103)

http://slidepdf.com/reader/full/laporan-praktikum-bahasa-pemrograman-java-danu-andika1314370103 69/74

 

65 

-  Apabila Form terisi data, ketika btnsave diklik maka akan tampil pesan

“Sukses Tambah Data” Artinya: Data yang diinputkan telah tersimpan di Database

-  Tetapi, jika Form masih terdapat Data yang kosong ketika btnsave diklik

maka akan tampil pesan

-  Button Clear akan membersihkan data pada Form

Page 70: Laporan Praktikum Bahasa Pemrograman Java DANU ANDIKA(1314370103)

7/21/2019 Laporan Praktikum Bahasa Pemrograman Java DANU ANDIKA(1314370103)

http://slidepdf.com/reader/full/laporan-praktikum-bahasa-pemrograman-java-danu-andika1314370103 70/74

 

66 

4.7  Analisa Modul 8

Analisa:

-  Seperti Hal nya Modul7 Invoice akan terisi otomatis dan menambahkan +1,

 bertujuan agar tidak terjadi data primary key yang sama.

 berikut adalah syntax nya:

 private void Invoice(){

txtinvoice.setEnabled(false);

try {

Class.forName("com.mysql.jdbc.Driver");

try (Connection cn =

DriverManager.getConnection("jdbc:mysql://localhost:3306/dbjava","root",

"");

Statement smt = cn.createStatement()){

String sql = "SELECT invoice as iv FROM tpenjualan

Order by invoice desc";

ResultSet rs = smt.executeQuery(sql);if(rs.next()){

int invo=

Integer.parseInt(rs.getString("iv"))+1;

txtinvoice.setText(Integer.toString(invo));

}

else{

int invo=1400;txtinvoice.setText(Integer.toString(invo));

}

rs.close();

}

}catch (ClassNotFoundException | SQLException e){

}

}

Page 71: Laporan Praktikum Bahasa Pemrograman Java DANU ANDIKA(1314370103)

7/21/2019 Laporan Praktikum Bahasa Pemrograman Java DANU ANDIKA(1314370103)

http://slidepdf.com/reader/full/laporan-praktikum-bahasa-pemrograman-java-danu-andika1314370103 71/74

 

67 

-  Ketika Id Customer diinputkan sesuai, maka txtnama, txthp,txtalamat akan

terisi otomatis. Data tersebut diambil dari database tcustomer yang terlah

diinputkan sebelumnya pada Modul7.

-  Jika cbostatus Member dipilih:

Gold= Diskon 20% (0,2)

Silver= Diskon 5% (0,05)

-  Jika cbojenis Barang:

iPhone, maka txtharga akan menampilkan Harga=7999000

iPad, maka txtharga akan menampilkan Harga=4999000

iPod, maka txtharga akan menampilkan Harga=2999000

-  txttanggal diambil dari waktu saat ini pada saat program load. Berikut

syntaxnya

Date current = new Date ();

SimpleDateFormat frmt = new SimpleDateFormat ("dd/MM/yyyy");

String dateString1 = frmt.format(current);txttanggal.setText(dateString1);

-  Pada saat diclick Button Bayar, txtdiskon dan txttotal akan tampil.

-  Berikut adalah proses btnbayar sintaxnya:

 private void btnbayarActionPerformed(java.awt.event.ActionEvent evt)

{

int harga=Integer.parseInt(txtharga.getText());int jumlah=Integer.parseInt(txtjumlah.getText());

int diskon,nilaidiskon,total;

if(cbostatus.getSelectedItem()=="Silver"){

diskon=((5*harga)/100);

nilaidiskon=harga-diskon;

total=(nilaidiskon*jumlah);

}else{

Page 72: Laporan Praktikum Bahasa Pemrograman Java DANU ANDIKA(1314370103)

7/21/2019 Laporan Praktikum Bahasa Pemrograman Java DANU ANDIKA(1314370103)

http://slidepdf.com/reader/full/laporan-praktikum-bahasa-pemrograman-java-danu-andika1314370103 72/74

 

68 

diskon=((20*harga)/100);

nilaidiskon=harga-diskon;

total=(nilaidiskon*jumlah);

} txtdiskon.setText(""+diskon);

txttotal.setText(""+total);

}

-  Ketika btnsave di Klik dan Data yang dimasukkan Telah lengkap, maka

akan tampil pesan Invoice Tersimpan.

-  Jika data yang dimasukkan belum lengkap, maka akan tampil pesan

“Lengkapi data” 

Page 73: Laporan Praktikum Bahasa Pemrograman Java DANU ANDIKA(1314370103)

7/21/2019 Laporan Praktikum Bahasa Pemrograman Java DANU ANDIKA(1314370103)

http://slidepdf.com/reader/full/laporan-praktikum-bahasa-pemrograman-java-danu-andika1314370103 73/74

 

69 

BAB V

PENUTUP

5.1 

Kesimpulan

  Dengan adanya Praktikum Mahasiswa dapat lebih memahami mengenai

kode program dengan bahasa pemrograman java dan juga bagaimana

menyimpan data ke database melalui program yang dibuat sendiri.

  Praktikum akan menjadi bekal bagi Mahasiswa dan dapat

megaplikasikan apa yang telah di peroleh dalam kehidupan sehari-hari

dan terkhusus dalam pembuatan skripsi nantinya.

  Praktikum dapat menunjang Mahasiswa untuk menjadi tenaga kerja

yang ahli dan professional dalam bidangnya yang mampu memenuhi

 pasar nasional atau bahkan internasional.

5.2  Saran

 

Diharapkan Modul dan Program Terbaru memiliki kesesuaian, sehinggamempermudah mahasiswa untuk melaksanakan praktikum di lab. 

  Diharapkan isi dari Modul memiliki code program yang berbeda-beda

namun dengan maksud yang sama, sehingga mahasiswa dapat

membandingkan mana syntax terbaik yang dapat digunakan. terutama

 pada cara memasukkan data ke database.

Page 74: Laporan Praktikum Bahasa Pemrograman Java DANU ANDIKA(1314370103)

7/21/2019 Laporan Praktikum Bahasa Pemrograman Java DANU ANDIKA(1314370103)

http://slidepdf.com/reader/full/laporan-praktikum-bahasa-pemrograman-java-danu-andika1314370103 74/74

 

DAFTAR PUSTAKA

 

Deitel . 2006. Java; How To Program. Diete & Associates : New Jersey

  Dwi Prasetyo, didik (2007). 150 Rahasia Pemprograman Java. Jakarta: PT.

Elex Media Komputindo

 

Indrajani, S.Kom, MM, Martin, S.Kom. Pemrograman Berorientasi Objek

dengan Java, PT. Gramedia, Jakarta, 2004.

  https://maqilazt.wordpress.com/2012/01/02/pernyataan-pengulangan-

 proses-loop/

  https://maqilazt.wordpress.com/2012/01/02/pernyataan-penentu-

keputusan/

  https://maqilazt.wordpress.com/2012/01/02/konversi-string-dan-bilangan-

number/

 

https://maqilazt.wordpress.com/2012/01/02/pengaturan-format-output-

numerik/

  https://maqilazt.wordpress.com/2012/01/02/operasi-io-stream-sederhana/

  http://siskomtek.blogspot.co.id/2014/03/jenis-operator-dalam-bahasa-

 pemrograman-java.html

  http://siteblogforu.blogspot.co.id/2013/09/pengertian-tipe-data.html

 

http://javanyaeka.blogspot.co.id/2009/07/variabel-konstanta-dan-tipe-data-

 java.html

  https://halimi1010.wordpress.com/category/j2se/pbo-1/mengenal-

identifier-keyword-literal-dan-tipe-data-operator-separator/

  http://www.grupkuliah.com/2015/03/pernyataan-dan-ekspresi-dalam-

 java.html