Top Banner
PEMROGRAMAN DASAR Program Teknologi Informasi & Ilmu Komputer, Universitas Brawijaya Penyeleksi Kondisi / Percabangan Dr. Eng. Herman Tolle, ST., MT Sistem Informasi PTIIK UB Semester Ganjil 2013/2014
25

Penyeleksi Kondisi / Percabangan - · PDF fileContoh: Hitung Body Mass ... •Untuk menangani percabangan dengan kondisi lebih dari satu . switch, case, break ... Buatlah algoritma

Feb 24, 2018

Download

Documents

lydat
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Penyeleksi Kondisi / Percabangan - · PDF fileContoh: Hitung Body Mass ... •Untuk menangani percabangan dengan kondisi lebih dari satu . switch, case, break ... Buatlah algoritma

PEMROGRAMAN DASAR

Program Teknologi Informasi & Ilmu Komputer, Universitas Brawijaya

Penyeleksi Kondisi / Percabangan

Dr. Eng. Herman Tolle, ST., MT

Sistem Informasi PTIIK UB Semester Ganjil 2013/2014

Page 2: Penyeleksi Kondisi / Percabangan - · PDF fileContoh: Hitung Body Mass ... •Untuk menangani percabangan dengan kondisi lebih dari satu . switch, case, break ... Buatlah algoritma

7 Aspek Dasar Pemrograman

1. Membaca Input Data

2. Menampilkan Output Data

3. Melakukan proses perhitungan (Compute)

4. Penyimpanan Data (Store)

5. Penyeleksi Kondisi (Percabangan)

6. Perulangan (Repetisi)

7. Method – Fungsi

Page 3: Penyeleksi Kondisi / Percabangan - · PDF fileContoh: Hitung Body Mass ... •Untuk menangani percabangan dengan kondisi lebih dari satu . switch, case, break ... Buatlah algoritma

PERCABANGAN / PENYELEKSI KONDISI

PROGRAM CONTROL

Page 4: Penyeleksi Kondisi / Percabangan - · PDF fileContoh: Hitung Body Mass ... •Untuk menangani percabangan dengan kondisi lebih dari satu . switch, case, break ... Buatlah algoritma

PERCABANGAN

• Termasuk kategori Program Flow Control

• Dalam sebuah algoritma, seringkali suatu atau sekelompok instruksi akan dilaksanakan jika suatu persyaratan (kondisi) dipenuhi (bernilai benar), dan sebaliknya, dilewati atau tidak dilaksanakan jika persyaratan (kondisi) tersebut tidak dipenuhi (bernilai salah).

• Percabangan dua (if-else)

• Percabangan banyak (if-else bertingkat dan switch-case)

Page 5: Penyeleksi Kondisi / Percabangan - · PDF fileContoh: Hitung Body Mass ... •Untuk menangani percabangan dengan kondisi lebih dari satu . switch, case, break ... Buatlah algoritma

Poin dalam Pecabangan

• If

• If .. Else ..

• If Bersarang (nested)

• Switch Case

• Break

• Default

Page 6: Penyeleksi Kondisi / Percabangan - · PDF fileContoh: Hitung Body Mass ... •Untuk menangani percabangan dengan kondisi lebih dari satu . switch, case, break ... Buatlah algoritma

Statement IF

• Menyeleksi sebuah kondisi, jika kondisi terpenuhi

(bernilai benar) maka statement setelah IF (kondisi) akan

dieksekusi

• Kondisi adalah suatu perbandingan yang biasanya

menggunakan operator relasional (>, >=, ==, !=, <, <=)

if (kondisi)

Statement;

if (kondisi)

{

Statement_1;

Statement_2;

Statement_N;

}

Page 7: Penyeleksi Kondisi / Percabangan - · PDF fileContoh: Hitung Body Mass ... •Untuk menangani percabangan dengan kondisi lebih dari satu . switch, case, break ... Buatlah algoritma

Contoh

if (Nilai>55)

System.out.pintln(“Lulus!”);

if (Nilai<=55)

{

System.out.pintln(“Maaf”);

System.out.pintln(“Tidak Lulus!”);

}

Page 8: Penyeleksi Kondisi / Percabangan - · PDF fileContoh: Hitung Body Mass ... •Untuk menangani percabangan dengan kondisi lebih dari satu . switch, case, break ... Buatlah algoritma

If Else

• Jika kondisi yang diuji bernilai salah, maka eksekusi

statemen pada bagian ELSE

if (kondisi)

{

Statement_true1;

Statement_true2;

Statement_N;

}

else

{

Statement_false1;

Statement_false2;

Statement_falseN;

}

if (kondisi)

Statement_true;

else

Statement_false;

Page 9: Penyeleksi Kondisi / Percabangan - · PDF fileContoh: Hitung Body Mass ... •Untuk menangani percabangan dengan kondisi lebih dari satu . switch, case, break ... Buatlah algoritma

Contoh If Else

if (Nilai>55)

System.out.println(“Lulus!”);

else

System.out.println(“Tidak Lulus!”);

if (harga>100000)

{

System.out.println(“Anda mendapatkan diskon 10%!”);

Diskon = harga*0.1;

} else {

System.out.println(“diskon 25%!”);

Diskon = harga*0.25;

}

Page 10: Penyeleksi Kondisi / Percabangan - · PDF fileContoh: Hitung Body Mass ... •Untuk menangani percabangan dengan kondisi lebih dari satu . switch, case, break ... Buatlah algoritma

Case: Kuis Pengurangan

• Program Kuis Pengurangan untuk anak SD Kelas1

• Sistem secara otomatis membangkitkan 2 bilangan

random (angka1, angka2) – int angka1 = (int)(Math.random() * 10);

• Jika angka1 < angka2 maka tukar nilainya

• Sistem menanyakan kepada pengguna, berapa

hasil pengurangan angka1-angka2

• Periksa jawaban pengguna, dan tampilkan “Anda

Benar” atau “Anda Salah”

Page 11: Penyeleksi Kondisi / Percabangan - · PDF fileContoh: Hitung Body Mass ... •Untuk menangani percabangan dengan kondisi lebih dari satu . switch, case, break ... Buatlah algoritma

Kuis Pengurangan anak SD Kelas 1 import java.util.Scanner;

public class KuisPengurangan {

public static void main(String[] args)

{

// 1. Bangkitkan dua integer satu-

dijit, angka1 dan angka2

int angka1 = (int)(Math.random() * 10);

int angka2 = (int)(Math.random() * 10);

// 2. Jika angka1 < angka2, maka tukar

angka1 dengan angka2

if (angka1 < angka2)

{

int temp = angka1;

angka1 = angka2;

angka2 = temp;

}

// 3. Minta siswa untuk menjawab

“Berapakah angka1 – angka2?”

System.out.print

("Berapakah " + angka1 + " - " + angka2

+ "? ");

Scanner masukan = new

Scanner(System.in);

int jawab = masukan.nextInt();

// 4. Periksa jawaban siswa dan

tampilkan apakah jawaban benar atau

salah

if (angka1 - angka2 == jawab)

System.out.println("Anda benar!");

else

System.out.println("Jawaban Anda

salah\n" + angka1 + " - "

+ angka2 + " seharusnya " + (angka1 -

angka2));

}

}

Page 12: Penyeleksi Kondisi / Percabangan - · PDF fileContoh: Hitung Body Mass ... •Untuk menangani percabangan dengan kondisi lebih dari satu . switch, case, break ... Buatlah algoritma

IF Bersarang (Nested)

if (Kondisi 1)

Statement 1 ;

else

if (Kondisi 2)

Statement 2;

else

Statement 3;

Page 13: Penyeleksi Kondisi / Percabangan - · PDF fileContoh: Hitung Body Mass ... •Untuk menangani percabangan dengan kondisi lebih dari satu . switch, case, break ... Buatlah algoritma

Nested if if (kondisi1)

{

if (kondisi2)

{

}

else

{

}

}

else

{

if (kondisi3)

{

}

else

{

}

}

if (kondisi1)

{

if (kondisi2)

{

if (kondisi4)

{

if (kondisi5)

{

}

}

}

else

{

}

}

else

{

if (kondisi3)

{

}

else

{

}

}

Page 14: Penyeleksi Kondisi / Percabangan - · PDF fileContoh: Hitung Body Mass ... •Untuk menangani percabangan dengan kondisi lebih dari satu . switch, case, break ... Buatlah algoritma
Page 15: Penyeleksi Kondisi / Percabangan - · PDF fileContoh: Hitung Body Mass ... •Untuk menangani percabangan dengan kondisi lebih dari satu . switch, case, break ... Buatlah algoritma

Case: Menghitung Body Mass Index

BMI Interpretasi

Di bawah 16 Sangat Kurus

16-18 Kurus

18-24 Normal

24-29 Gemuk

29-35 Sangat Gemuk

> 35 Terlalu Gemuk

• Input:

– Tinggi (meter)

– Berat (kg)

• Process: – BMI = berat / (tinggi*tinggi)

Page 16: Penyeleksi Kondisi / Percabangan - · PDF fileContoh: Hitung Body Mass ... •Untuk menangani percabangan dengan kondisi lebih dari satu . switch, case, break ... Buatlah algoritma

Contoh: Hitung Body Mass Index import java.util.Scanner;

public class HitungBMI {

public static void main(String[] args) {

Scanner masukan = new Scanner(System.in);

// Meminta pengguna memasukkan berat dalam kg

System.out.print("Masukkan berat badan dalam kg: ");

double berat = masukan.nextDouble();

// Meminta pengguna memasukkan tinggi badan

dalam meter

System.out.print("Masukkan tinggi badan dalam meter

");

double tinggi = masukan.nextDouble();

// Hitung BMI

double bmi = berat/ (tinggi* tinggi);

// Tampilkan hasil

System.out.printf("BMI Anda adalah %5.2f\n",

bmi);

if (bmi < 16)

System.out.println("Anda sangat kurus");

else if (bmi < 18)

System.out.println("Anda kurus");

else if (bmi < 24)

System.out.println("Anda normal");

else if (bmi < 29)

System.out.println("Anda gemuk");

else if (bmi < 35)

System.out.println("Anda sangat gemuk");

else

System.out.println("Anda terlalu gemuk");

}

}

Page 17: Penyeleksi Kondisi / Percabangan - · PDF fileContoh: Hitung Body Mass ... •Untuk menangani percabangan dengan kondisi lebih dari satu . switch, case, break ... Buatlah algoritma

SWITCH CASE

Page 18: Penyeleksi Kondisi / Percabangan - · PDF fileContoh: Hitung Body Mass ... •Untuk menangani percabangan dengan kondisi lebih dari satu . switch, case, break ... Buatlah algoritma

SWITCH CASE

• Pernyataan switch-case dapat dipergunakan

sebagai pengganti pernyataan if-else bertingkat,

jika pernyataan if-else bertingkat terlalu banyak,

sehingga menjadi sulit dibaca.

• Untuk menangani percabangan dengan kondisi

lebih dari satu

Page 19: Penyeleksi Kondisi / Percabangan - · PDF fileContoh: Hitung Body Mass ... •Untuk menangani percabangan dengan kondisi lebih dari satu . switch, case, break ... Buatlah algoritma

switch, case, break

• Variable pada switch

hanya untuk bilangan

bulat (byte, integer,

dll) atau karakter

(char)

• Case nilai dengan tipe

data yang sama

dengan switch

Syntax: switch (variable)

{

case nilai_1:

statemen_1;

break;

case nilai_2:

statemen_2a;

statemen_2b;

break;

case nilai_n:

statemen_n;

break;

default:

statemen_default

}

Page 20: Penyeleksi Kondisi / Percabangan - · PDF fileContoh: Hitung Body Mass ... •Untuk menangani percabangan dengan kondisi lebih dari satu . switch, case, break ... Buatlah algoritma

Break & Default

• Pernyataan Break digunakan untuk

menghentikan program lanjut ke baris

selanjutnya jika kondisi terpenuhi

• Tanpa menggunakan ‘Break’ Maka program akan

dieksekusi pada baris selanjutnya

• Statement Default digunakan jika tidak ada

kondisi pada bagian case yang ditemukan

Page 21: Penyeleksi Kondisi / Percabangan - · PDF fileContoh: Hitung Body Mass ... •Untuk menangani percabangan dengan kondisi lebih dari satu . switch, case, break ... Buatlah algoritma
Page 22: Penyeleksi Kondisi / Percabangan - · PDF fileContoh: Hitung Body Mass ... •Untuk menangani percabangan dengan kondisi lebih dari satu . switch, case, break ... Buatlah algoritma
Page 23: Penyeleksi Kondisi / Percabangan - · PDF fileContoh: Hitung Body Mass ... •Untuk menangani percabangan dengan kondisi lebih dari satu . switch, case, break ... Buatlah algoritma

Contoh

switch ( nilai/10)

{

case 10:

case 9:

case 8:

huruf='A';

break;

case 7:

huruf='B';

break;

case 6:

huruf='C';

break;

case 5:

huruf='D';

break;

default:

huruf='E';

break;

}

Page 24: Penyeleksi Kondisi / Percabangan - · PDF fileContoh: Hitung Body Mass ... •Untuk menangani percabangan dengan kondisi lebih dari satu . switch, case, break ... Buatlah algoritma

Tugas

Buatlah algoritma flowchart dan program komputer untuk

menyelesaikan kasus berikut:

1. Program konversi menghitung nilai Akhir (Huruf)

2. Input: Nama, NIM, nilai Tugas, nilai Quiz, nilai UTS, nilai

UAS, (nilai dalam angka (float)).

3. Output:

1. Nilai Huruf

2. Komentar untuk setiap nilai yang diperoleh, misalnya “Hebat”

untuk nilai A, “Belajar lebih keras” untuk nilai D, dst

3. Ditampilkan dalam format tabel dan kolom

Page 25: Penyeleksi Kondisi / Percabangan - · PDF fileContoh: Hitung Body Mass ... •Untuk menangani percabangan dengan kondisi lebih dari satu . switch, case, break ... Buatlah algoritma

• Jalankan program yang anda buat, dan

simulasikan dengan data anda sendiri. Hasil

simulasi di screenshot sebagai bagian dari

laporan

• Laporan source code & screen shot dalam

lembar A4, dengan Nama-Nim pada header

• Nilai Akhir = (0.2 x Quiz) + (0.25 x UTS) + (0.30 x

UAS) + (0.25 x Tugas)