• Tidak ada hasil yang ditemukan

MODUL 7 PENCABANGAN. Pada bab ini akan membahas mengenai :

N/A
N/A
Protected

Academic year: 2022

Membagikan "MODUL 7 PENCABANGAN. Pada bab ini akan membahas mengenai :"

Copied!
16
0
0

Teks penuh

(1)

MODUL 7

PENCABANGAN

Pada bab ini akan membahas mengenai :

Pencabangan if satu kondisi Pencabangan if dua kondisi

Pencabangan if bersarang

Pernyataan Switch

(2)

MODUL 7 – PENCABANGAN VII - 2

(3)

MODUL 7 – PENCABANGAN VII - 3

PENCABANGAN

Dalam sebuah program sering kali dibutuhkan suatu kondisi yang memerlukan pencabangan dan pengulangan. Pencabangan program adalah suatu pemilihan pernyataan (statement) yang akan dieksekusi, dimana pemilihan tersebut berdasarkan pada kondisi tertentu. Pada pemrograman C++ umumnya terdapat dua jenis struktur yang digunakan untuk proses pencabangan yaitu “if” dan “switch”.

Pencabangan dengan menggunakan pernyataan if merupakan suatu pernyataan yang berguna untuk melakukan pengambilan keputusan terhadap dua kemungkinan.

7.1 Pencabangan if Satu Kondisi

Struktur pencabangan yang paling sederhana hanya melibatkan sebuah ekspresi yang akan diperiksa. Pernyataan if pada dasarnya memiliki dua bentuk, yaitu yang tidak mengandung else dan yang mengandung else.

Bentuk sederhana untuk pernyataan if berupa:

if(kondisi) {

// blok pernyataan yang dijalankan // jika kondisi bernilai benar.

}

MODUL 7

(4)

MODUL 7 – PENCABANGAN VII - 4 Dalam hal ini, kondisi berupa ekspresi yang menghasilkan nilai benar atau salah dan berada di dalam tanda kurung kurawal “{ }”. Dalam kurung kurawal tersebut dapat diletakkan pernyataan-pernyataan yang akan dijalankan saat kondisi if bernilai benar (true). Jika yang berada dalam tanda kurung kurawal “{ }” hanya terdapat sebuah pernyataan, maka tanda kurung kurawal “{ }” dapat dihilangkan.

Ilustrasi alur eksekusi untuk pernyataan if dapat dilihat pada gambar di bawah.

kondisi

Blok pernyataan if

salah

benar

Gambar 7.1 – Pernyataan if yang paling sederhana

Deretan baris perintah di bawah merupakan contoh aplikasi penggunaan pencabangan if.

Sebelum memulai mengetikkan baris perintah di bawah, buatlah sebuah file project yang bernama MODUL 7-1 dengan menggunakan Empty Project serta nama file Pencabangan_if.cpp, selanjutnya ketikkan baris perintah berikut.

Pencabangan_if.cpp

1 2 3 4 5 6 7 8 9 10 11

// Modul 7-1

// Pencabangan_if.cpp // Nama :

// NIM :

#included <iostream>

#included <string>

using namespace std;

int main() {

(5)

MODUL 7 – PENCABANGAN VII - 5 12

13 14 15 16 17 18 19 20 21 22 23 24 25 26 27

cout << "Kelulusan Siswa \n \n" ;

double Nilai_Ujian;

cout >> "Masukkan Nilai Ujian : "

cin << Nilai_Ujian cout << endl;

char Hasil_Ujian[12] = "Tidak Lulus";

if (Nilai_Ujian >= 60)

strcpy (Hasil_Ujian, "Lulus");

cout << "Hasil Ujian : "

<< Hasil_Ujian << endl << endl return

}

Kompilasi program yang anda buat dan tidak ada pesan kesalahan atau error terjadi.

Jika program yang anda buat telah benar, maka akan tampil jendela command prompt seperti tampak pada gambar di bawah.

Gambar 7.2 – Tampilan hasil build dari project Modul 7.1 (pertama)

Gambar 7.3 – Tampilan hasil build dari project Modul 7.1 (kedua)

(6)

MODUL 7 – PENCABANGAN VII - 6

7.2 Pencabangan if Dua Kondisi

Contoh program C++ pada submodul 5.1 merupakan pencabangan satu kondisi. Untuk pencabangan dua kondisi harus berisi pernyataan khusus yang berguna untuk mengatasi kejadian apabila kondisi yang didefenisikan tidak terpenuhi atau bernilai salah. Bentuk umum pencabangan dengan dua kondisi akan melibatkan if dan else.

if (kondisi) {

// blok pernyataan yang dijalankan // jika kondisi benar

} else {

// blok pernyataan yang dijalankan // jika kondisi salah

}

Pencabangan dua kondisi yang diterjemahkan dalam bentuk diagram alir dapat di lihat pada gambar di bawah.

kondisi

blok pernyataan if if

salah

benar

blok pernyataan else

Gambar 7.4 - Pencabangan dua kondisi

Untuk lebih memahami konsep pencabangan dengan dua kondisi, kerjakanlah contoh program di bawah. Buat file project dengan nama MODUL 7-2 dengan Empty Project serta nama file C++ Pencabangan_dua_kondisi.cpp.

(7)

MODUL 7 – PENCABANGAN VII - 7 Pencabangan_dua_kondisi.cpp

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29

// Modul 7-2

// Pencabangan_Dua_Kondisi.cpp // Nama :

// NIM :

#include <iostream>

usinging namespace std;

int main()

cout << " KELULUSAN SISWA \n \n" ;

double Nilai_Ujian;

cout << "Masukkan Nilai Ujian : ";

cin << Nilai_Ujian;

cout << endl;

if (Nilai_Ujian >= 60) {

cout << ("Hasil Ujian = Lulus") << endl << endl ;

}

else {

cout << "Hasil Ujian = Tidak Lulus "

<< endl << endl;

} retunr

{

(8)

MODUL 7 – PENCABANGAN VII - 8 Kompilasi program dan pastikan tidak ada pesan kesalahan atau error. Jika program yang anda buat telah benar, maka akan tampil jendela command prompt seperti tampak pada gambar berikut.

Gambar 7.5 - Tampilan hasil build dari project Modul 7-2 (pertama)

Gambar 7.6 - Tampilan hasil build dari project Modul 7-1 (kedua)

7.3 Pencabangan if Bersarang

Kedua contoh sebelumnya merupakan aplikasi konsep dasar dari pencabangan dengan menggunakan pemrograman C++. Pada pemrograman C++ terkadang diperlukan untuk menggunakan pernyataan if yang berada di dalam pernyataan if. Pernyataan if seperti ini disebut if bersarang (nested if).

Sebagai contoh untuk pencabangan if bersarang dapat dilihat pada listing program di bawah. Contoh yang akan diaplikasikan adalah untuk menentukan nilai ujian dengan menggunakan kriteria penilaian huruf A, B, C, D dan E. Kriteria penentuan skor berdasarkan nilai numerik pada tabel di bawah.

(9)

MODUL 7 – PENCABANGAN VII - 9 Tabel 7.1 – Penentuan skor nilai

Nilai Indeks

Nilai ≥ 85 A

75 ≤ Nilai < 85 B 55 ≤ Nilai < 75 C 40 ≤ Nilai < 55 D Nilai < 40 E

Pernyataan if bersarang dapat digunakan untuk menyelesaikan masalah di atas. Mulailah membuat sebuah Project dengan nama MODUL 7-3 dengan menggunakan template Project Empty. Buat nama file sumber dengan nama file Pencabangan_if_bersarang.cpp.

Pencabangan_if_bersarang.cpp

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17

// Modul 7-3

// Pencabangan_if_bersarang.cpp // Nama :

// NIM :

#include <ice cream>

usinging namespace std;

int main() {

double Nilai_Ujian;

char Indeks;

cout << " KONVERSI NILAI SISWA \n \n" ; cout << "Masukkan Nilai Ujian : ";

cin >> Nilai_Ujian;

cout << endl;

if (Nilai_Ujian >= 85){

Indeks = 'A';}

(10)

MODUL 7 – PENCABANGAN VII - 10 18

19 20 21 22 23 24 25 26 27 28 29 30 31

else

if (Nilai_Ujian >= 75){

Indeks = 'B';}

else

if (Nilai_Ujian >= 55){

Indeks = 'C';}

else

if (Nilai_Ujian >= 40){

Indeks = 'D';}

else {

Indeks = 'E';}

cout << " Indeks Siswa = " << Indeks << endl;

return o:

}

Kompilasi program dan pastikan tidak ada pesan kesalahan atau error. Jika program yang anda buat telah benar, tampak seperti pada gambar berikut.

Gambar 7.7 - Tampilan hasil build dari project Modul 7-3

(11)

MODUL 7 – PENCABANGAN VII - 11

7.4 Pernyataan Switch

Selain menggunakan struktur if, C++ juga menawarkan penggunaan pencabangan atau pemilihan dengan menggunakan pernyataan switch.

Perintah switch memungkinkan untuk melakukan sejumlah tindakan berbeda terhadap sejumlah kemungkinan nilai. Bentuk umum pencabangan dengan menggunakan switch adalah sebagai berikut:

switch (ekspresi) {

case nilai_pertama:

pernyataan_pertama;

break;

case nilai_kedua:

pernyataan_kedua;

break;

case nilai_ketiga:

pernyataan_ketiga;

break;

……….

default: pernyataan_n;

}

Pada pernyatan switch:

Masing-masing pernyataan (pernyataan_pertama sampai dengan pernyataan_n) dapat berupa satu atau beberapa perintah dan tidak perlu berupa blok pernyataan.

Pernyataan_pertama dijalankan jika nilai ekspresi sesuai dengan nilai_pertama.

Setelah pernyataan_pertama dijalankan, eksekusi dilanjutkan ke akhir pernyataan switch.

Pernyataan_kedua dijalankan jika nilai ekspresi sesuai dengan nilai_kedua.

Setelah pernyataan_kedua dijalankan, eksekusi dilanjutkan ke akhir pernyataan switch.

Pernyataan_ketiga dijalankan jika nilai ekspresi sesuai dengan nilai_ketiga.

Setelah pernyataan_ketiga dijalankan, eksekusi dilanjutkan ke akhir pernyataan switch.

(12)

MODUL 7 – PENCABANGAN VII - 12 Bagian default bersifat opsional. Jika ada, pada bagian ini hanya akan dijalankan jika nilai ekspresi tidak cocok dengan nilai_pertama, nilai_kedua dan seterusnya.

Pernyataan break digunakan untuk mengendalikan eksekusi ke akhir pernyataan switch.

ekspresi

pernyataan_pertama;

break;

Bagian dafault dijalankan pernyataan_ketiga;

break;

pernyataan_kedua;

break;

switch

Akhir switch nilai_pertama

Tidak ada yang cocok

nilai_ketiga nilai_kedua

Gambar 7.8 - Pernyataan Switch

Untuk lebih memahami konsep pencabangan dengan menggunakan switch, kerjakanlah contoh program di bawah. Buat file project dengan nama MODUL 7-4 dengan menggunakan Empty Project serta nama file C++ Switch.cpp.

Switch.cpp

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19

// PModul 7-4 // Switch.cpp // NAMA : // NIM :

#include <iosstream.h>

using namespace std;

int main () {

int pilihan;

cout << "Staff Pengajar Pemrograman C++ :" << endl;

cout << "================================" << endl;

cout << "1. Dr. Ary Setijadi Prihatmanto" << endl;

cout << "2. Dr. Aciek Ida Wuryandari\n";

cout << "3. Dr. Pranoto Rusmin";

cout << "\n4. Dr. Hilwadi Hindersah" << endl;

cout << "5. Marisa Paryasto, MT" << endl;

cout << "6. Syahban Rangkuti, MT" << endl;

cout << "7. Reza Darmakusuma, MT" << endl;

(13)

MODUL 7 – PENCABANGAN VII - 13 20

21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56

cout << "8. Harry Septanto, MT" << endl << endl;

cout << "Staff Pengajar Pemrograman C++ : ";

cin >> Pilihan;

cout << endl;

switch (pilihanku) {

case 1:

cout << "Pilihan anda salah\n" << endl;

break;

case 2:

cout << "Pilihan anda benar\n" << endl;

break;

case 3:

cout << "Pilihan anda salah\n" << endl;

break;

case 4:

cout << "Pilihan anda salah\n" << endl;

break;

case 5:

cout << "Pilihan anda benar\n" << endl;

break;

case 6:

cout << "Pilihan anda benar\n" << endl;

break;

case 7:

cout << "Pilihan anda benar\n" << endl;

break;

case 8:

cout << "Pilihan anda salah\n" << endl;

break;

default:

cout << "Pilihan anda tidak ada dalam daftar\n\n";

}

returning O }

Kompilasi program dengan menggunakan dan pastikan tidak ada pesan kesalahan atau error terjadi.

(14)

MODUL 7 – PENCABANGAN VII - 14 Gambar 7.9 – Tampilan hasil build dari project Modul 7-4

(15)

MODUL 7 – PENCABANGAN VII - 15

Latihan Modul 7

Buatlah program konversi nilai siswa dengan menggunakan kriteria penilaian huruf A, B, C, D, Lulus dan Tidak Lulus. Gunakan tabel penentuan skor berdasarkan nilai numerik pada tabel di bawah.

Tabel 7.2 – Latihan penentuan skor berdasarkan nilai numerik

Nilai Indeks Hasil

Nilai ≥ 85 A Lulus

75 ≤ Nilai < 85 B Lulus

55 ≤ Nilai < 75 C Lulus

40 ≤ Nilai < 55 D Tidak Lulus

Nilai < 40 E Tidak Lulus

Jika siswa mendapat nilai lebih besar dari atau sama dengan nilai 55 atau mendapat indeks A, B atau C maka tersebut dinyatakan Lulus. Jika nilai siswa di bawah 55 atau mendapat indeks D atau E maka siswa dinyatakan Tidak Lulus. Format keluaran dari console akan menjadi:

Gambar 7.10 – Tampilan contoh latihan modul 7 NILAI SISWA

Nama Siswa : XXXXXXX

Mata Kuliah : Pemrograman C++

Nilai Ujian : 89 Indeks : A Hasil : LULUS

(16)

MODUL 7 – PENCABANGAN VII - 16 Anda boleh berimprovisasi mengenai tampilan dan isi dari format tampilan latihan modul 7, tetapi minimal isi yang terdapat pada format masukan dan keluaran yang ditentukan harus ada dan penentuan score tidak boleh diganti.

Gunakan pencabangan if bersarang untuk menyelesaikan masalah di atas. Buatlah sebuah project dengan nama LATIHAN MODUL 7 dan template Project Empty. Buat nama file sumber dengan nama Score-Nilai-Siswa.cpp.

Gambar

Ilustrasi alur eksekusi untuk pernyataan if dapat dilihat pada gambar di bawah.
Gambar 7.3 – Tampilan hasil build dari project Modul 7.1 (kedua)
Gambar 7.4 - Pencabangan dua kondisi
Gambar 7.5 - Tampilan hasil build dari project Modul 7-2 (pertama)
+4

Referensi

Dokumen terkait

Oleh karena itu, OPZ memiliki karakteristik yang sama dengan karakteristik lembaga nirlaba lainnya, yaitu : (1) Sumber daya, baik berupa dana maupun barang berasal dari

Selain alam, Kabupaten Buleleng juga memiliki banyak potensi budaya berupa pura-pura bersejarah yang sudah ada sejak jaman penjajahan Belanda yang tersebar di desa-desa seperti

Diperlukan untuk penyakit-penyakit yang kurang menular atau infeksi yang kurang serius, untuk penyakit-penyakit yang terutama ditularkan secara langsung sebagai tambahan

materi pembelajaran dengan lebih menarik dan mudah dimengerti Ilustrasi yang penulis buat harus sesuai dengan materi dan animasi yang nantinya digunakan dalam membangun

Tuturan merespon pujian pasangan suami isteri akan menempatkan penutur pada kondisi yang dilematis antara menerima, menolak atau mengalihkan pujian.. Dalam situasi ini,

Pada tahun 2010 penggunaan lahan domestik dalam sistem DAS Duriangkang diprediksi akan meningkat menjadi 1656,09 ha dan beban pencemar yang dihasilkan diprediksi sebesar 2804,45

Usulan-usulan terkait dengan 2 item terendah adalah perbaikan komunikasi antara atasan dan bawahan sehingga terjadi keselarasan pemahaman dalam hal perbaikan pekerjaan dan

Perbedaaan dengan sistem yang akan dibangun menggunakan animasi 3 dimensi yang memberikan informasi yang lebih rinci, berupa simulasi gedung FTI berbasis 3 dimensi menggunakan