Laporan Praktikum Bahasa Pemrograman1 - Modul 3



MODUL 3
STATEMENT PERCABANGAN
Disusun Untuk Memenuhi Tugas Praktikum Bahasa Pemrograman 1
Dosen : Dede Irawam, M.Kom




Fitri Nurhayati
20160910015
SI  2016 A






SISTEM INFORMASI
FAKULTAS ILMU KOMPUTER
UNIVERSITAS KUNINGAN
2017


KATA PENGANTAR

Alhamdulillah, puji syukur kehadirat Allah SWT atas rahmat dan karunia-Nya yang diberikan kepada kita semua sebagai umatnya. Saya dapat menyusun makalah dengan judul “STATEMENT PERCABANGAN” untuk memenuhi tugas mata kuliah Bahasa Pemrograman 1.
Makalah yang disusun untuk mempelajari lebih detail mengenai statement percabangan dalam bahasa pemrograman java. Saya berharap informasi yang saya dapatkan tidak hanya untuk saya sendiri melainkan untuk para pembaca sebagai ilmu untuk menambah wawasan.
Dalam kesempatan ini saya mengucapkan terima kasih, semoga makalah ini dapat memberikan kontribusi positif dan memberikan manfaat dalam hidup kita nantinya. Dari lubuk hati yang paling dalam, sangat disadari bahwa makalah yang saya buat masih jauh dari sempurna. Oleh sebab itu tidak ada salahnya saya mengharapkan berbagai kritik dan saran yang membangun untuk lebih baik kedepannya.



Kuningan, 11 November 2017



Penulis






















DAFTAR ISI

KATA PENGANTAR
DAFTAR ISI

BAB I
PENDAHULUAN
1.1  LATAR BELAKANG
1.2   RUMUSAN MASALAH
1.3  TUJUAN PENULISAN

BAB II
PEMBAHASAN
      2.1  STRUKTUR KONTROL PERCABANGAN
2.1.1        STSTEMENT IF
2.1.2        STSTEMENT IF-ELSE
2.1.3        STSTEMENT IF-ELSE-IF
2.1.4        STSTEMENT SWITCH CASE
      2.2  KENDALI PERCABANGAN PADA JAVA
2.3  POST TEST

BAB III
PENUTUP
3.1 ANALISIS
3.2 KESIMPULAN
3.3 DAFTAR PUSTAKA




BAB I
PENDAHULUAN


A.   LATAR BELAKANG
 
Bahasa pemrograman merupakan suatu bahasa komputer  atau perintah yang dibuat manusia untuk membuat komputer menjadi memiliki fungsi tertentu. Bahasa pemrograman ini adalah suatu susunan aturan penulisan (sintaks) yang membentuk kode-kode yang kemudian akan diterjemahkan oleh program kompiler menjadi bahasa rakitan (assembly) dan terus diolah hingga dimengerti oleh mesin. Komputer hanya mengerti bahasa mesin. Bagi pemula, belajar bahasa pemrograman memang sulit, namun bukan berarti itu penghalang bagi kita untuk enggan belajar. Hal itu dikarenakan tidak semua orang mempunyai pemikiran dan kreativitas yang sama sehingga daya nalar terhadap sebuah bahasa pemrograman didapatkan hasil yang berbeda–beda untuk setiap orang. Teknologi komputer kini sudah menyusupi hampir semua bidang kehidupan manusia, dari pemerintah pusat sampai tingkat pemerintah desa, perusahaan-perusahaan, supermarket, minimarket dan perguruan tinggi hampir semuanya mengenal komputer. Saat ini, yang mempunyai lingkungan yang semakin luas dan banyak diminati, juga dapat digunakan untuk menghasilkan uang adalah dunia pemrograman komputer. Dalam dunia pemrograman komputer, dikenal banyak bahasa pemrograman, seperti C, C++, Pascal, Basic, Java, dan lain- lain. Di antara banyaknya bahasa pemrograman, Java adalah salah satu yang paling diminati. Oleh karena itulah, yang akan dibahas dalam makalah ini adalah bahasa pemrograman Java.


B.   RUMUSAN MASALAH
  1. Apa yang dimaksud percabangan dalam Java?
  2. Apa saja bagian dalam percabangan Java?
  3. Bagaimana membuat program percabangan Java?

C.   TUJUAN
1.    Memahami percabangan dalam Java
2.    Memahami bagian dalam percabangan Java
3.    Membuat program percabangan Java



BAB II
PEMBAHASAN



A.  STRUKTUR KONTROL PERCABANGAN
Struktur kontrol percabangan  adalah pernyataan dari Java yang mengijinkan user untuk memilih dan mengeksekusi blok kode spesifik dan mengabaikan blok kode yang lain.
Jenis Percabangan pada Java terdiri dari :
1.      Statement If
2.      Statement If-else
3.      Statement If-else-if
4.      Statement Switch case

1.     Percabangan IF
Percabangan if akan menentukan sebuah pernyataan (blok kode) yang akan dieksekusi jika memenuhi syarat atau kondisi tertentu. Sintaks statementnya adalah sebagai berikut :
 
if(kondisi){
statement;
}
atau
if (kondisi){
    Statement1;
    Statement2;
    ....
}

Flowchart Statement IF
 

Contoh Program IF
import java.util.Scanner;
public class statement_if {

    public static void main(String[] args) {

        int belanja = 0;
        Scanner scan = new Scanner(System.in);

        System.out.print("Total Belanjaan Rp ");
        belanja = scan.nextInt();

        if ( belanja > 100000 ) {
            System.out.println("Selamat, anda mendapatkan hadiah");
        }
        System.out.println("Terima kasih...");
    }
}   

Running Program



2.     Percabangan IF-ELSE
Percabangan if-else hampir sama dengan percabangan if. Hanya saja yang membedakan pada percabangan if-else ini adalah terdapat penambahan pernyataan untuk kondisi yang bernilai salah (false). Sintaks statementnya adalah sebagai berikut :
 
if (boolean_expression){
   //eksekusi jika kondisi benar
   statement1;
}else{
   //eksekusi jika kondisi salah
   statement2;
}

Flowchart Statement IF-ELSE




Contoh Program IF-ELSE
import java.util.Scanner;
public class if_else {
    public static void main(String[] args) {

        int nilai;
        String nama;
        Scanner scan = new Scanner(System.in);

        System.out.print("Nama : ");
        nama = scan.nextLine();
        System.out.print("Nilai : ");
        nilai = scan.nextInt();

        if( nilai >= 70 ) {
            System.out.println("Selemat " + nama + ", Anda LULUS");
        } else {
            System.out.println("Maaf " + nama + ", Anda GAGAL");
        }

    }

}

Running Program



3.     Percabangan IF-ELSE-IF
Percabangan pada bagian kondisi else dari blok if-else dapat menjadi struktur if-else yang lain. Kondisi struktur seperti ini mengijinkan kita untuk membuat seleksi persyaratan yang lebih kompleks. Sintaks statementnya adalah sebagai berikut :
 
if( boolean_expression1 ) {
    statement1;
}else if( boolean_expression2 ){
    statement2;
 }else{
    statement3;
}
 
Catatan :
kita dapat memiliki banyak blok else-if sesudah pernyataan if. Blok else bersifat opsional dan dapat dihilangkan. Pada contoh yang ditampilkan di atas, jika boolean_expression1 bernilai true, maka program akan mengeksekusi statement1 dan melewati pernyataan yang lain. Jika boolean_expression2 bernilai true, maka program akan mengeksekusi statement2 dan melewati statement3.

Flowchart Statement IF-ELSE-IF



Contoh Program IF-ELSE-IF
import java.util.Scanner;
public class IF_ELSE_IF {
    public static void main(String[] args) {

        int nilai;
        String grade;
        Scanner scan = new Scanner(System.in);

        System.out.print("Inputkan nilai: ");
        nilai = scan.nextInt();

        if ( nilai >= 90 ) {
            grade = "A";
        } else if ( nilai >= 80 ){
            grade = "B+";
        } else if ( nilai >= 70 ){
            grade = "B";
        } else if ( nilai >= 60 ){
            grade = "C+";
        } else if ( nilai >= 50 ){
            grade = "C";
        } else if ( nilai >= 40 ){
            grade = "D";
        } else {
            grade = "E";
        }

        System.out.println("Grade: " + grade);
    }
}

Running Program




          4.     Percabangan Switch-Case
Percabangan Switch-Case sebenarnya adalah bentuk lain dari IF/ELSE/IF. Bedanya, percabangan ini menggunakan kata kunci switch dan case. Formatnya juga berbeda, tapi cara kerjanya sama. Sintaks penggunaannya adalah sebagai berikut :
 
switch (ekspresi){
case (kondisi1):
   ..statement1; //eksekusi perintah
   break; //untuk menghentikan
case (kondisi2):
   ..statement2; //eksekusi perintah
   break; //untuk menghentikan
case (kondisi3):
   ..statement3; //eksekusi perintah
   break; //untuk menghentikan
default;
   ..default statement; //eksekusi perintah
   break;
}

Perlu diperhatikan juga bahwa terdapat kata kunci break dan default.
  • break artinya berhenti. Ini untuk memerintahkan komputer untuk berhenti mengecek case yang lainnya.
  • default artinya jika nilai variabel tidak ada yang sama dengan pilihan case di atas, maka kerjakan kode yang ada di dalam default.
Pilihan default bisa juga tidak memiliki break, karena dia adalah pilihan terakhir. Artinya pengecekan akan berakhir di situ.

Catatan:
Pernyataan switch akan mencari nilai ekspresi yang sesuai dengan nilai-nilai yang didaftarkan pada pernyataan case. Jika salah satu nilai ditemui, maka program akan melompat ke cabang case tersebut dan melakukan perintah yang terdapat disana. Jika tidak ditemui, maka program akan melompat ke perintah yang terdapat pada pernyataan default. 

Flowchart Statement Switch-Case

Contoh Program Switch-Case
import java.util.Scanner;
public class switch_case {
    public static void main (String[] args){
       int angka;
       Scanner scan = new Scanner (System.in);
      
       System.out.print("Masukan Angka = ");
        angka = scan.nextInt();
        switch (angka){
            case 1:
            System.out.println("Hari Senin");
            break;
            case 2:
            System.out.println("Hari Selasa");
            break;
            case 3:
            System.out.println("Hari Rabu");
            break;
            case 4:
            System.out.println("Hari Kamis");
            break;
            case 5:
            System.out.println("Hari Jumat");
            break;
            case 6:
            System.out.println("Hari Sabtu");
            break;
            case 7:
            System.out.println("Hari Minggu");
            break;
            default:
            System.out.println("Angka Yang Anda Masukan Tidak Ada Yang Sesuai");
            break;
        }
    }
}

Running Program




B.     Kendali percabangan pada JAVA
      Bahasa Java menyediakan beragam kendali percabangan tidak lokal, yaitu: break,return, dan continue.

  1. Statement Break
        Java tidak memiliki pernyataan goto. Penggunaan goto di bahasa pemrograman lain adalah cara untuk mencabang secara sembarang, yang membuat program sulit untuk dimengerti dan mengurangi optimasi compiler tertentu. Namun, ada beberapa keadaan dimana goto berguna dan bentuk yang sah untuk pengaturan program.
        Pernyataan break pada Java dirancang untuk mengatasi semua kasus tersebut. Istilah break mengacu pada proses memecahkan blok program. Proses tersebut memerintahkan runtime untuk menjalankan program di belakang blok tertentu. Untuk dapat ditunjuk, suatu blok diberi nama, dan Java memiliki bentuk label untuk menyatakan nama suatu blok.
  
Contoh Penggunaan Break
public class Break {
public static void main(String[] args){
boolean t =true;
a: {
        b: {
                c: {
                        System.out.println("Sebelum break");
                        if (t)
                        break b;
                System.out.println("Ini tidak akan dieksekusi");
    }
            System.out.println("Ini tidak akan dieksekusi");
}
        System.out.println("Ini adalah setelah b");
        }
    }
}

2.      Statement Return
        Java menggunakan bentuk sub-rutin yang disebut method untuk mengimplementasikan antarmuka procedural ke kelas objek. Setiap saat dalam method dapat digunakan pernyataan return yang menyebabkan eksekusi mencabang kembali ke pemanggil method

Contoh Penggunaan Return
public class return1 {
    public static void main(String[] args){
    boolean t = true;
        System.out.println("Sebelum Return");
        if (t)
        return;
        System.out.println("Ini tidak akan dieksekusi");
    }
}   


     C.   POST TEST
Buatlah program untuk menghitung gaji aryawan sebuah perusahaan dengan gaji pokok ditentukan berdasarkan Golongan dan Masa kerja

Golongan
Masa Kerja
Gaji Pokok
I
0 s/d 2
1500000
3 s/d 5
2500000
>5
3500000
II
0 s/d 2
2000000
3 s/d 5
3000000
>5
4000000
Tunjangan yang diberikan berupa tunjangan istri dan tunjangan anak dimana tunjangan istri 2,5% / orang dan tunjangan anak 5% / anak sampai anak ke 3. Inputan yang dimasukan nik, nama, jenis kelamin, status pernikahan, jumlah istri dan jumlah anak.

Sintaks program
package modul_03;
import java.util.Scanner;
public class post_test {

    public static void garis(){
        for(int i = 1; i<=140; i++){
            System.out.print("-");
        }
        System.out.println("");
    }
    public static void main(String[] args) {
   Scanner scan = new Scanner(System.in);
   Scanner in = new Scanner(System.in);
   long  m_kerja=0,nik, jl_istri=0,jl_anak=0;
   double gapok=0, tj_istri=0, tj_anak=0, total=0, status=0;
   int gol;
   String nama,gender,temp=null;
        System.out.print("NIK \t\t= ");
        nik = in.nextLong();
        System.out.print("Nama \t\t= ");
        nama = scan.nextLine();
        System.out.print("Jenis Kelamin [L/P] = ");
        gender = scan.nextLine();
        System.out.print("Setatus Pernikahan [1.Nikah / 2.Single] = ");
        status = in.nextDouble();
        if(status == 1){
            System.out.print(" Istri \t\t = ");
            jl_istri = in.nextLong();
            System.out.print(" Anak [max 3] \t = ");
            jl_anak = in.nextLong();
            temp = " Nikah ";
        }
        else if(status == 2){
            System.out.print(" Anak [max 3] \t = ");
            jl_anak = in.nextLong();
            temp = " Single ";
        }
        System.out.print(" Golongan [1/2]  = ");
        gol = in.nextInt();
        switch(gol){
            case 1 :
                if(m_kerja<=2){
                gapok = 1500000;
                tj_istri = jl_istri*(gapok*0.025);
                tj_anak = jl_anak * (gapok *0.05);
                total = gapok + tj_istri + tj_anak;
                }
                else if((m_kerja>=2) && (m_kerja<5)){
                gapok = 2500000;
                tj_istri = jl_istri*(gapok*0.025);
                tj_anak = jl_anak * (gapok *0.05);
                total = gapok + tj_istri + tj_anak;
                }
                else if(m_kerja>5){
                gapok = 3500000;
                tj_istri = jl_istri*(gapok*0.025);
                tj_anak = jl_anak * (gapok *0.05);
                total = gapok + tj_istri + tj_anak;
                }
            break;
            case 2 :
                if(m_kerja<=2){
                gapok = 2000000;
                tj_istri = jl_istri*(gapok*0.025);
                tj_anak = jl_anak * (gapok *0.05);
                total = gapok + tj_istri + tj_anak;
                }
                else if((m_kerja>=2) && (m_kerja<5)){
                gapok = 3000000;
                tj_istri = jl_istri*(gapok*0.025);
                tj_anak = jl_anak * (gapok *0.05);
                total = gapok + tj_istri + tj_anak;
                }
                else if(m_kerja>5){
                gapok = 4000000;
                tj_istri = jl_istri*(gapok*0.025);
                tj_anak = jl_anak * (gapok *0.05);
                total = gapok + tj_istri + tj_anak;
                }
            break;   
        }
        garis();
        System.out.println("NIK \t\tNama \t\tJenis Kelamin\tStatus Pernikahan\tGaji pokok \tTunjangan Anak \t Tunjangan Istri   Total");
        garis();
        System.out.print(nik+"\t"+nama+" \t"+gender+"\t\t"+temp);
        System.out.print("\t\t\t"+gapok+" \t"+tj_anak+"\t"+tj_istri+"  \t"+total);
        System.out.print("\n");
    }
}

Running Program

 




BAB III
PENUTUP


A.    ANALISIS
  • Public Class ‘Nama Java Class’ { : Heading dari aplikasi java yang jika di ubah, maka aplikasi akan error atau tidak berjalan
  • Public Static Void Main (String [] args) { : semacam pengantar dalam apliksi java / pembuka argument
  • (String [] args) { : String (semua karakter dalam masuk ke dalamnya), args (argumen)
  • If / Switch : pernyataan percabangan dalam Java
  • “;” : titik koma sebagai tanda berakhirnya suatu baris
  • out.println : sebagai baris teks, yang isinya akan di jalankan

B.     KESIMPULAN
Pada program java percabangan, kita diajarkan untuk membuat program yang memiliki statement lebih dari satu dan berupa pemilihan. jadi, kita dapat memilih statement manakah yang akan digunakan
Dalam membuat suatu program, penggunaan statement if atau statement switch adalah sebuah keputusan. Anda dapat menentukan yang mana yang akan dipakai berdasarkan kemudahan membaca program dan faktor-faktor yang lain.
Statement if dapat digunakan untuk membuat keputusan berdsarkan rentang nilai tertentu atau kondisi tertentu, sedangkan statement switch membuat keputusan hanya berdasarkan nilai unique (unik) dari integer atau character.



DAFTAR FUSTAKA



Komentar

Postingan populer dari blog ini

Laporan Praktikum Bahasa Pemrograman 1 - Modul 6

Laporan Praktikum Bahasa Pemrograman1 - Modul 1