Tampilkan postingan dengan label Java. Tampilkan semua postingan
Tampilkan postingan dengan label Java. Tampilkan semua postingan

Sabtu, 05 Desember 2015

program reservasi hotel dengan java oop - inputan dinamis

Program reservasi hotel dengan java oop - inputan dinamis dengan JOptionPane dan BufferedReader. Pada kesempatan kali ini, saya akan memberikan tutorial untuk membuat program reservasi hotel dengan  menggunakan bahasa pemrograman Java, menggunakan konsep OOP atau object oriented programming dan bisa melakukan inputan yang dinamis.

sebelum membuat program ini, saya secara pribadi merasa kesulitan mencari tutorial yang jelas di internet tentang penggunaan inputan dinamis pada program java yang berbasis objek atau oop. tutorial yang ada di internet sebagian besar atau bahkan semua nya menggunkan inputan yang bersifat statis. 

Program Reservasi Hotel dengan Java OOP

program reservasi hotel berbasis java yang saya buat ini terdapat 3 class utama yaitu class entitas yang berisi method setter dan getter, class proses yang berisi proses logika dan perhitungan aritmatika serta class main yang berisi program utama yang akan di eksekusi.

Program reservasi Hotel Java

Screenshot Program

Program reservasi Hotel Java

Program reservasi Hotel Java

Program reservasi Hotel Java

Program reservasi Hotel Java

Program reservasi Hotel Java

Program reservasi Hotel Java

alur program

  1. user menginputkan inputan data diri dan pilihan kamar hotel di program Main.
  2. setelah itu, inputan yang telah di berikan akan masuk ke class entitas yang berisi method getter dan setter.
  3. setelah masuk ke file entitas, lalu inputan tadi di proses di class prosses.  
  4. setelah di proses di class proses, maka hasil nya akan di tampilkan kembali di class main.

Langkah - langkah membuat program reservasi hotel

Inputan dengan JOptionPane
  • Siapkan teks editor yang biasa kalian gunakan, bisa menggunakan notepad++, sublime, atau bisa juga menggunakan IDE Netbeans.
  • ketikkan kode berikut dan simpan dengan nama EntitasSewaHotel.java file ini berfungsi sebagai Class entitas yang berisi method getter dan setter.

    public class EntitasSewaHotel {
    protected int jenis, lama, status;
    protected String nama, alamat;
    public int getJenis() {
    return jenis;
    }
    public void setJenis(int jenis) {
    this.jenis = jenis;
    }
    public int getLama() {
    return lama;
    }
    public void setLama(int lama) {
    this.lama = lama;
    }
    public int getStatus() {
    return status;
    }
    public void setStatus(int status) {
    this.status = status;
    }
    public String getNama() {
    return nama;
    }
    public void setNama(String nama) {
    this.nama = nama;
    }
    public String getAlamat() {
    return alamat;
    }
    public void setAlamat(String alamat) {
    this.alamat = alamat;
    }
    } 

  • Kemudian buat file baru lagi dengan nama HitungTarifHotel.java Class ini nantinya akan berfungsi sebagai class yang bertugas melakukan perhitungan aritmatika dan percabangan.

    public class HitungTarifHotel extends EntitasSewaHotel{
    private int tarif;
    private double diskon;
    private double bayar;
    private String kamar;
    private String ostatus;

    public HitungTarifHotel() {
    }

    public String get_status(){
    if(status==1)
    ostatus="Member";
    else if(status==2)
    ostatus="Non Member";

    return ostatus;
    }

    public int get_tarif(){
    if(jenis==1){
    //kamar="Deluxe ";
    tarif = lama*275000;
    }
    else if (jenis==2){
    //kamar="Suite";
    tarif = lama*300000;
    }
    else if (jenis==3){
    //kamar="President";
    tarif = lama*375000;
    }
    else{
    }
    return tarif;
    }

    public String get_kamar(){
    if(jenis==1){
    kamar="Deluxe ";
    //tarif = lama*275000;
    }
    else if (jenis==2){
    kamar="Suite";
    //tarif = lama*300000;
    }
    else if (jenis==3){
    kamar="President";
    //tarif = lama*375000;
    }
    else{
    }
    return kamar;
    }


    public double get_diskon(){
    if (status==1){
    if(lama>=4 && lama<=7){
    diskon = 0.20 * tarif;
    }
    else if (lama>7) {
    diskon = 0.35 * tarif;
    }
    }
    else if (status==2){
    if (lama>=4 && lama<=7){
    diskon = 0.10 * tarif;
    }
    else if (lama>7){
    diskon = 0.15 * tarif;
    }
    }
    return diskon;
    }

    public double get_bayar(){
    return tarif-diskon;
    }
    } 

  • Setelah itu buat file dengan nama SewaHotelMain.java file ini berfungsi sebagai kelas utama atau main class yang akan di eksekusi dan di jalankan.

    import java.io.IOException;
    import javax.swing.JOptionPane;

    public class SewaHotelMain {
    public static void main(String[] args) throws IOException{

    HitungTarifHotel pesan=new HitungTarifHotel();

    pesan.setNama(JOptionPane.showInputDialog("Masukkan nama kamu, iya kamu"));
    String msg_nama = "Selamat datang gan " + pesan.getNama();
    JOptionPane.showMessageDialog(null, msg_nama);

    String alamat;
    pesan.setAlamat(JOptionPane.showInputDialog("Masukan Alamat"));

    boolean stt=true;
    while(stt){
    String menu = "\nPilih Jenis Kamar\n1. Deluxe Room Rp 275.000/hari\n2. Suite Room Rp 300.000/hari\n3. President Room Rp 370.000/hari\nJenis kamar yang dipesan \t: ";
    try {
    pesan.setJenis(Integer.parseInt(JOptionPane.showInputDialog(menu)));
    }
    catch (Exception e) {
    }
    if(pesan.getJenis()>3 || pesan.getJenis()<1){
    stt=true;
    JOptionPane.showMessageDialog(null, "nak nginput seng tenanan", "Ojo ngawur gan", JOptionPane.ERROR_MESSAGE);
    }
    else
    stt=false;
    }


    boolean stt2=true;
    while(stt2){
    String status="status \n1. Member \n2. Non Member";
    try {
    pesan.setStatus(Integer.parseInt(JOptionPane.showInputDialog(status)));
    }
    catch (Exception e) {
    }
    if(pesan.getStatus()>2 || pesan.getStatus()<1){
    stt2=true;
    JOptionPane.showMessageDialog(null, "nak nginput seng tenanan", "Ojo ngawur gan", JOptionPane.ERROR_MESSAGE);
    }
    else
    stt2=false;
    }



    String lama="masukkan lama menginap (Hari)";
    try {
    pesan.setLama(Integer.parseInt(JOptionPane.showInputDialog(lama)));
    }
    catch (Exception e) {
    }


    String outputHasil="Hasil Pemesanan \n\nNama : "+pesan.getNama()+
    "\nAlamat : "+pesan.getAlamat()+
    "\nJenis Kamar : "+pesan.get_kamar()+
    "\nLama Menginap : "+pesan.getLama()+" Hari"+
    "\nStatus : "+pesan.get_status()+
    "\nTarif : Rp."+pesan.get_tarif()+
    "\nDiskon : Rp."+pesan.get_diskon()+
    "\nTotal Bayar : Rp."+pesan.get_bayar();
    try {
    JOptionPane.showMessageDialog(null,outputHasil);
    }
    catch (Exception e) {
    }
    }
    } 

  • Setelah itu simpan ketiga file di atas dalam satu folder, compile dengan perintah javac namafile.java, dimulai dari file entitas, proseshitung dan terakhir file main, setelah semua file di compile, jalankan class main dengan perintah java SewaHotelMain
dalam program java sederhana, ada berbagai macam cara untuk memberikan inputan kedalam program, yang sering di gunakan adalah JOption pane dan Buffered Reader. kode di atas adalah Program yang menggunakan inputan JOptionPane, dan berikut ini saya juga akan meberikan tutorial Program Reservasi Hotel dengan inputan Buffered Reader.

Inputan dengan BufferedReader
  • Untuk Inputan dengan BufferedReader, di class main bufferedReader ini saya hanya mengedit kelas main dengan Inputan JOption pane di atas, dan kode-kode dengan inputan JOptionPane nya hanya saya komentar saja, agar bisa mudah dibedakan inputan BufferedReader dengan Inputan JOptionPane. kalian hanya cukup mengganti file SewaHotelMain.java dengan kode seperti di bawah ini.

    import java.io.BufferedReader;
    import java.io.IOException;
    import java.io.InputStreamReader;
    import javax.swing.JOptionPane;

    public class SewaHotelMain {
    public static void main(String[] args) throws IOException{

    HitungTarifHotel pesan=new HitungTarifHotel();
    BufferedReader br = new BufferedReader(new InputStreamReader(System.in));

    //pesan.setNama(JOptionPane.showInputDialog("Masukkan nama kamu, iya kamu"));
    //String msg_nama = "Selamat datang gan " + pesan.getNama();
    //JOptionPane.showMessageDialog(null, msg_nama);

    System.out.println("Masukkan nama Kamu : ");
    pesan.setNama(br.readLine());


    //String alamat;
    //pesan.setAlamat(JOptionPane.showInputDialog("Masukan Alamat"));

    System.out.println("Masukkan Alamat : ");
    pesan.setAlamat(br.readLine());

    boolean stt=true;
    while(stt){
    System.out.println("\nPilih Jenis Kamar\n1. Deluxe Room Rp 275.000/hari\n2. Suite Room Rp 300.000/hari\n3. President Room Rp 370.000/hari\nJenis kamar yang dipesan \t: ");;
    try {
    pesan.setJenis(Integer.parseInt(br.readLine () ));
    }
    catch (Exception e) {
    }
    if(pesan.getJenis()>3 || pesan.getJenis()<1){
    stt=true;
    //JOptionPane.showMessageDialog(null, "nak nginput seng tenanan", "Ojo ngawur gan", JOptionPane.ERROR_MESSAGE);
    System.out.println("Inputan salah silahkan ulangi lagi");
    }
    else
    stt=false;
    }


    boolean stt2=true;
    while(stt2){
    //String status="status \n1. Member \n2. Non Member";
    System.out.println("status \n1. Member \n2. Non Member");
    try {
    //pesan.setStatus(Integer.parseInt(JOptionPane.showInputDialog(status)));
    pesan.setStatus(Integer.parseInt(br.readLine()));
    }
    catch (Exception e) {
    }
    if(pesan.getStatus()>2 || pesan.getStatus()<1){
    stt2=true;
    //JOptionPane.showMessageDialog(null, "nak nginput seng tenanan", "Ojo ngawur gan", JOptionPane.ERROR_MESSAGE);
    System.out.println("Inputan salah silahkan ulangi lagi");
    }
    else
    stt2=false;
    }



    //String lama="masukkan lama menginap (Hari)";
    System.out.println("Masukkan lama menginap : ");
    try {
    //pesan.setLama(Integer.parseInt(JOptionPane.showInputDialog(lama)));
    pesan.setLama(Integer.parseInt(br.readLine()));
    }
    catch (Exception e) {
    }


    /*String outputHasil="Hasil Pemesanan \n\nNama : "+pesan.getNama()+
    "\nAlamat : "+pesan.getAlamat()+
    "\nJenis Kamar : "+pesan.get_kamar()+
    "\nLama Menginap : "+pesan.getLama()+" Hari"+
    "\nStatus : "+pesan.get_status()+
    "\nTarif : Rp."+pesan.get_tarif()+
    "\nDiskon : Rp."+pesan.get_diskon()+
    "\nTotal Bayar : Rp."+pesan.get_bayar();
    try {
    JOptionPane.showMessageDialog(null,outputHasil);
    }
    catch (Exception e) {
    }
    */

    System.out.println("<==== Hasil Pemesanan =====>"+
    "\nNama \t\t: "+pesan.getNama()+
    "\nAlamat \t\t: "+pesan.getAlamat()+
    "\nJenis kamar \t: "+pesan.get_kamar()+
    "\nStatus \t\t :"+pesan.get_status()+
    "\nTarif \t\t :"+pesan.get_tarif()+
    "\nDiskon \t\t :"+pesan.get_diskon()+
    "\nTotal \t\t :"+pesan.get_bayar()
    );

    }
    }

Mungkin Cukup sekian Postingan Tentang program reservasi hotel dengan java oop kali Ini, jika ada kesalahan mohon di benarkan . Ciaoooooo ^_^

Jumat, 20 September 2013

Modul lengkap pemrograman Java

Modul lengkap pemograman Java - Java adalah bahasa pemrograman berorientasi objek (OOP-Object Oriented Programming). Bahasa pemrograman Java dikenal sebagai bahasa pemrograman tingkat tinggi. Java mudah dipelajari, terutama bagi programmer yang telah mengenal C/C++. Java merupakan bahasa pemrograman berorientasi objek yang merupakan paradigma pemrograman masa depan. Nah itulah sedikit pengertian apa itu bahasa pemrograman Java.


Nah yang pengin belajar pemrograman java, saya punya modul - modul yang pasti berguna buat kalian yang pengen belajar java, langsung download saja sob...
  1. Download modul belajar dasar pemrograman java 
  2. Download modul MySQLdan Java Database Connectivity 
  3. Download modul membuat aplikasi Android sederhana 
  4. Download modul membuat aplikasi java web enterprise sederhana
  5. Download modul membangun aplikasi Client Server dengan Java
  6. Download modul Swing Make Over

Nah sekian modul - modul pemograman java dari penulis Eko Kurniawan Khannedy

Jumat, 05 Juli 2013

Kumpulan Soal Pemrograman Java

Kumpulan Soal Pemrograman Java - Java merupakan salah satu bahasa pemograman berbasis OOP (OOP-Object Oriented Programming).Sebagai bahasa pemrograman, Java dikenal sebagai bahasa pemrograman tingkat tinggi.  Untuk belajar java kita perlu melatih pemahaman bahasa Java dengan soal - soal latihan. Nah.... berawal dari itulah saya merangkum program - program java yang anda bisa coba untuk menambah ilmu anda. 





Download kumpulan soal - soal  latihan java  - Download disini


Password : http://pohon-tua.blogspot.com/
Sekian contoh soal pemrograman java, semoga bermanfaat :D

Contoh Program java dengan Private Access

Contoh Program java dengan Private Access - Agar suatu method atau atribut tidak dapat diakses keseluruhan program, maka anda dapat menggunakan Private agar method anda dapat diakses secara khusus jika diinginkan. Dalam Program ini terdapat konsep method, private acces, Inherentance.

class karyawan{
double gajiK(){
double g = 1000000;
return g;
}
void SetData(String nama, String jabatan){
this.nama = nama;
this.jabatan = jabatan;
}
String Getnama(){
return nama;
}
String Getjabatan(){
return jabatan;
}
}

class manager extends karyawan{
double tunjangan = 500000;
double GajiM(){
double gM = gajiK() + tunjangan;
return gM;
}
public static void main(String[] args) {
karyawan kr = new karyawan();
manager mn = new manager();
kr.SetData("Tukijan", "Accounting");

System.out.println("Nama Karyawan : " + kr.Getnama());
System.out.println("Jabatan       : " + kr.Getjabatan());
System.out.println("Gaji Karyawan :" + kr.gajiK());

mn.SetData("Sule","Boss");
System.out.println("Nama manager  :" + mn.Getnama());
System.out.println("Jabatan       :" + mn.Getjabatan());
}
}

Hasil :


Sekian program saya, semoga bermanfaat.

Contoh Program Method di Java

Contoh Program Method di Java - Method merupakan suatu cara dimana anda dapat memecah - mecah struktur program. Method pada java mirip dengan Function dan Procedure pada bahasa pemrograman lain. dalam java juga mengunakan konsep parameter dan tanpa parameter.

Berikut contoh program dengan konsep method pada java tanpa parameter

class  kotak{
     int panjang;
     int lebar;
     int tinggi;
     int volume;
// pembuatan method hitung volume dengan jenis non void/ mengembalikan nilai.
     public int HitungVolume(){
volume = panjang * lebar * tinggi;
return volume;
      }
//pembuatan method hitung volume dengan jenis void/tanpa mengembalikan data.
     public void TampilVolume(){
System.out.println("Hasil Volume balok adalah " + panjang * lebar * tinggi);
     }
     public static void main(String[] args){
          kotak obj = new kotak();
          obj.panjang = 10;
          obj.lebar = 5;
          obj.tinggi = 4;

          //pemanggilan non void/dengan pengembalian data.
          System.out.println("Volume Balok adalah " + obj.HitungVolume() * 5);

          //pemanggilan non void/dengan pengembalian data.
          obj.TampilVolume();
     }

}

Hasil :



Contoh program dengan konsep method pada java dengan parameter

class  kotak{
     int panjang;
     int lebar;
     int tinggi;
     int volume;
     // pembuatan method hitung volume dengan jenis non void/ mengembalikan nilai.
     public int HitungVolume(){
          volume = panjang * lebar * tinggi; // panjang, lebar, tinggi sudah dideklarasikan di method void.
          return volume;
     }
     public void SetData(int p, int l, int t){
          panjang = p;
          lebar = l;
          tinggi = t;
     }

     public static void main(String[] args){
          kotak obj = new kotak();
          obj.SetData(10,20,5);
          System.out.println("Volume Balok adalah " + obj.HitungVolume());
     }
}
Hasil :


Berikut contoh program java dengan menggunakan konsep method. Semoga bermanfaat

Minggu, 16 Juni 2013

Pengertian Inherentance beserta contoh

Pengertian Inherentance beserta contoh - Inheritance atau pewarisan pada pemograman java adalah suatu hubungan dari dua buah class atau lebih yang dimana sifat dari suatu class baik method maupun atributnya dapat diturunkan ke class lain. 
Keuntungan dari Inheritance adalah diturunkannya atribut mau method sehingga tidak perlu merubah kode kelas yang membutuhkan tambahan atribut atau metode sama. Kelas dasar akan mewariskan semua atribut dan kodenya kecuali konstruktor dan destruktor yang memiliki izin akses public dan protected ke kelas turunannya dengan izin akses yang sama dengan pada kelas dasar.
Ketika sebuah kelas turunan dibuat objeknya saat eksekusi, maka secara implisit konstruktor kelas dasar dipanggil terlebih dahulu baru kemudian konstruktor kelas turunan dijalankan. Begitu juga saat objek dimusnahkan maka secara destruktor kelas turunan akan dijalankan baru kemudian destruktor kelas dasar dijalankan.

Dalam menurunkan dasarnya ialah pada penggalan syntak " extends ". Konsep Inheretance ialah seperti berikut :

class namaclass extends namaclassturunan{
}

Contoh Program Inheretace di Java

import java.util.Scanner;
class lingkaran{
      public double phi = 3.14;
public int jari;
      double HitLuasLingkaran(int jari){
            this.jari = jari;
            double LuasLingkaran = phi * this.jari * this.jari;
return LuasLingkaran;
      }
}
class kerucut extends lingkaran{
      public int tinggi;
      double HitLuasKerucut(int tinggi){
           this.tinggi = tinggi;
           double LuasKerucut = (HitLuasLingkaran(jari) * tinggi)/3;
           return LuasKerucut;
      }
      public static void main(String[] args){
kerucut obj = new kerucut();
Scanner data = new Scanner(System.in);
System.out.print("Masukkan Jari - jari : ");
obj.jari = data.nextInt();
System.out.print("Masukkan Tinggi : ");
obj.tinggi = data.nextInt();
System.out.println("Luas Kerucut "+obj.HitLuasKerucut(obj.tinggi))
     }

}

Minggu, 26 Mei 2013

Program Java Menghitung Nilai ganjil, Prima dan faktorial

Program Java Menghitung Nilai ganjil, Genap dan Prima : Berikut merupakan program java menghitung bilangan ganjil , menghitung bilangan Prima dan Menghitung Faktorial dengan menggunakan metode input scanner.


import java.util.Scanner;
public class  tugas1_bag3{
     public static void main(String[] args){
     String angka;
     int i,j;
     int hasil=1;
     Scanner DataIn = new Scanner(System.in);
     System.out.print("Masukan angka : ");
     angka = DataIn.nextLine();
     //Menghitung Angka Ganjil dengan batas nilai 10000
     if (Integer.parseInt(angka)>10000||0>Integer.parseInt(angka)){
          System.out.println("Angka harus 0 - 10.000");
     }
     else
    {
  System.out.print("Bilangan Ganjil dari 1 s/d " +angka+ " adalah ");
          for(i=1; i<=Integer.parseInt(angka); i++){
          if (i % 2 ==1){
               System.out.print(i +" ");
         }
     }
  System.out.println();
     //Mengitung Bilangan Prima dengan batas nilai 10000
     System.out.print("Bilangan Prima dari 1 s/d " +angka+ " adalah ");
     for (i=1; i<=Integer.parseInt(angka); i++){
         for (j=2;j<i;j++ ){
             if (i % j ==0){
                  break;
             }
        }
        if ( i==j){
System.out.print(i +" ");
        }
    }
System.out.println();
  //Mengitung Faktorial dengan batas nilai 10000
System.out.print("Faktorial " +angka+ " adalah ");
for (i=1; i<=Integer.parseInt(angka); i++){
hasil = hasil * i;
System.out.print(i);
            if (i < Integer.parseInt(angka)){
System.out.print(" * ");
}
            else
{
System.out.print(" = ");
}
}
System.out.println(+hasil);
    }
}
}

Hasilnya seperti berikut :