Sabtu, 11 Januari 2020

BENTUK STRUKTUR KASUS

BENTUK STRUKTUR KASUS

Kalau kita perhatikan, alur pengeksekusian sebuahkode program dikerjakan satu persatu dari atas sampe bawah.
Baris demi baris dibaca, kemudian komputer mengerjakan apa yang diperintahkan.
Alur porgram tanpa percabangan 
Alur program nya satu tidak ada percabangan, percabangan adalah sebuah istilah yang digunakan untuk menyebut alur program yang bercabang. percabangan juga dikenal dengan "Control Flow" , "Struktur IF" , "Decision" , dsb. semuanya itu sama.
Setelah kita menggunakan percabangan alurnya akan bertambah seperti ini.

Flowchart Percabangan 

Lalu bagaimana cara menulis kode percabangan dalam java?
caranya: menggunakan kata kunci if,else,switch, dan case, dan operator ternary.
contoh format struktur if seperti ini.

if( suatu_kondisi ) {
    // lakukan sesuatu kalau kondisi benar
    // Lakukan ini juga
}
suatu_kondisi hanya bernilai true/false saja. Kita bisa gunakan operator relasi dan logika di sini.
Untuk lebih jelasnya, nanti akan kita bahas.
Sebelumnya, kamu perlu tahu dulu tiga bentuk percabangan pada Java:
  1. Percabangan IF
  2. Percabangan IF/ELSE
  3. Percabangan IF/ELSE/IF atau SWITCH/CASE
1. PERCABANGAN IF
Percabangan ini hanya memiliki satu pilihan. Artinya, pilihan di dalam IF hanya akan dikerjakan kalau kondisinya benar
Percabangan IF 
Tapi kalau salah tidak akan melakukan apa-apa. Alias lanjut eksekusi ke perintah berikutnya.
Contoh:
Pernahkah kalian belanja di toko, kemudian kalau belanja di atas sekian ribu dapat hadiah atau diskon.
Nah! Contoh kasus seperti itu, dapat kita selesaikan dengan menggunakan percabangan ini.
untuk lebih jelasnya
Misalkan ada sebuah toko buku. Mereka memberikan hadiah berupa perlengkapan sekolah kepada pembeli yang belanja di atas Rp 100.000.
Maka programnya bisa kita buat seperti ini:
import java.util.Scanner;

public class Hadiah {

    public static void main(String[] args) {

        // membuat variabel belanja dan scanner
        int belanja = 0;
        Scanner scan = new Scanner(System.in);

        // mengambil input
        System.out.print("Total Belanjaan: Rp ");
        belanja = scan.nextInt();

        // cek apakah dia belanja di atas 100000
        if ( belanja > 100000 ) {
            System.out.println("Selamat, anda mendapatkan hadiah!");
        }

        System.out.println("Terima kasih...");

    }

}
Jalankan programnya dan perhatikanlah hasilnya.

Program diskon dengan Java

Cobalah untuk memberikan nilai di bawah 100000 dan perhatikan apa akan yang terjadi.

2.PERCABANGAN IF/ELSE

Sedangkan percabangan IF/ELSE memiliki pilihan alternatif kalau kondisinya salah.
IF: “Jika kondisi benar maka kerjakan ini, kalau tidak silahkan lanjut”
IF/ESLE: “Jika kondisi benar maka kerjakan ini, kalau salah maka kerjakan yang itu, setelah itu lanjut”

Perbedaan percabangan IF dengan IF/ELSE


Begitulah perbedaan IF dengan IF/ELSE.
Sekarang mari kita coba dalam kode program


Misalkan, kalau nilai siswa lebih besar dari 70, maka ia dinyatakan lulus. Kalau tidak, maka dia gagal.
Programnya bisa kita buat seperti ini
import java.util.Scanner;

public class CekKelulusan {

    public static void main(String[] args) {

        // membuat variabel dan Scanner
        int nilai;
        String nama;
        Scanner scan = new Scanner(System.in);

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

        // cek apakah dia lulus atau tidak
        if( nilai >= 70 ) {
            System.out.println("Selemat " + nama + ", anda lulus!");
        } else {
            System.out.println("Maaf " + nama + ", anda gagal");
        }

    }

}
Hasil outputnya:

Hasil output program tes kelulusan

3.PERCABANGAN IF/ELSE DAN SWITCH/CASE
Jika percabangan IF/ESLE hanya memiliki dua pilihan saja. Maka percahangan IF/ELSE/IF memiliki lebih dari dua pilihan.
Formatnya seperti ini:
if (suatu kondisi) {
    // maka kerjakan ini
    // kerjakan perintah ini juga
    // …
} else if (kondisi lain) {
    // kerjakan ini
    // kerjakan ini juga
    // …
} else if (kondisi yang lain lagi) {
    // kerjakan perintah ini
    // kerjakan ini juga
    // …
} esle {
    // kerjakan ini kalau
    // semua kondisi di atas
    // tidak ada yang benar
    // …
}
Coba perhatikan contohnya:



Jika nilainya lebih besar dari 90, maka grade-nya “A”. Sedangkan kalau lebih besar dari 80, maka “B+”. Lebih besar dari 70, maka “B”, dan seterusnya.
Lebih jelasnya, mari kita buat program.

Silahkan buat sebuah class baru bernama HitungGrade, kemudian ikuti kode program berikut.
import java.util.Scanner;

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

        // membuat variabel dan scanner
        int nilai;
        String grade;
        Scanner scan = new Scanner(System.in);

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

        // higung gradenya
        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";
        }

        // cetak hasilnya
        System.out.println("Grade: " + grade);
    }
}
Hasil outputnya:

Hasil output program hitung grade


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.
switch(variabel){
    case 1:
        // kerjakan kode ini
        // kode ini juga
        break;
    case 2:
        // kerjakan kode ini
        // kode ini juga
        break;
    case 3:
        // kerjakan kode ini
        // kode ini juga
        break;
    default:
        // kerjakan kode ini
        // kode ini juga
        break;
}
Perhatikan: case 1 artinya nilai variabel yang akan dibandingkan, apakah nilainya sama dengan 1 atau tidak.
Kalau iya, maka kerjakan kode yang ada di dalam case 1.
Bisa juga betuknya berbeda, misalnya seperti ini:
switch (variabel) {
    case 'A':
        // lakukan sesuatu
        break;
    case 'B':
        // lakukan ini
        break;
    default:
        // lakukan ini
}
Perlu diperhatikan juga: di sana ada 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.
Contoh program dengan percabangan SWITCH/CASE
import java.util.Scanner;

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

        // membuat variabel dan Scanner
        String lampu;
        Scanner scan = new Scanner(System.in);

        // mengambil input
        System.out.print("Inputkan nama warna: ");
        lampu = scan.nextLine();

        switch(lampu){
            case "merah":
                System.out.println("Lampu merah, berhenti!");
                break;
            case "kuning":
                System.out.println("Lampu kuning, harap hati-hati!");
                break;
            case "hijau":
                System.out.println("Lampu hijau, silahkan jalan!");
                break;
            default:
                System.out.println("Warna lampu salah!");
        }
    }
}
Hasil outputnya:
Hasil output program lampu lalu lintas dengan percabangan switch case
  
 

Tidak ada komentar:

Posting Komentar