PENGERTIAN
Dalam dunia pemrograman, Percabangan adalah proses
penentuan keputusan atau conditional statement. Jumlah kondisi bisa satu atau lebih. Percabangan
mengevaluasi kondisi atau ekspresi yang hasilnya benar atau salah. Hasil
kondisi adalah true dan false. Ekspresi disebut ekspresi boolean.
Konsepnya, jika kita menginstruksikan komputer untuk melakukan
suatu aksi tertentu (x), hanya jika suatu kondisi Y terpenuhi. Atau, kita
memerintahkan komputer untuk melakukan aksi tertentu (A) jika suatu kondisi
tidak terpenuhi.
Dalam bahasa pemrograman python, syntax atau statement yang
digunakan untuk melakukan percabangan adalah:
1. If : kondisi utama
|
2. elif : kondisi
kedua atau ketiga hingga ke-n
|
3. else : kondisi terakhir di mana semua kondisi sebelumnya
tidak ada yang terpenuhi
|
Tabel Percabangan :
No.
|
Pernyataan
|
Deskripsi
|
1.
|
if
|
Pernyataan
if terdiri dari ekspresi boolean diikuti oleh satu baris atau lebih
pernyataan.
|
2.
|
If …
else
|
Bila
pernyataan if benar, maka blok pernyataan if dieksekusi.
Bila
salah, maka blok pernyataan else yang dieksekusi.
|
3.
|
If…elif..else
|
Disebut
juga if bercabang.
Bila
ada kemungkinan beberapa kondisi bisa benar maka digunakan pernyataan if…elif
atau if…elif…else.
|
1. BLOK
IF
Percabangan if digunakan saat terdapat satu pilihan
keputusan percabangan.
Sintaksnya sbb :
Bagian kondisi adalah sebuah variabel atau nilai yang bertipe
data boolean. Baik berupa nilai True/False secara langsung, atau pun sebuah
ekspresi logika. Jika kondisi bernilai bernilai benar (True), maka statements()
akan dieksekusi oleh sistem, jika kondisi bernilai salah (False) maka
statement/kondisi if tidak akan dieksekusi.
contoh penggunaan kondisi IF pada Python:
Pada saat if yang pertama dieksekusi, angka yang diinput
adalah 10. Maka kondisinya adalah apakah 10 > 0? Karena hasilnya benar
(True), maka statement di grup if ini dieksekusi dan menampilkan pesan 10
adalah bilangan positif.
Kemudian dimasukkan angka -2. Maka hasil pengujian kondisinya
menjadi apakah -2 > 0? Hasilnya adalah salah/False. Karnanya,
pernyataan tidak dieksekusi.
2.
BLOK
IF .. ELSE ..
Pengembangan dari bentuk percabangan if, pada bentuk kedua
terdapat blok else sebagai pernyataan alternatif yang akan dieksekusi ketika
kondisi bernilai salah (False).
Sintaksnya sebagai berikut :
Bagian kondisi adalah sebuah variabel atau nilai yang bertipe
data boolean. Baik berupa nilai True/False secara langsung, atau pun sebuah
ekspresi logika. Jika kondisi if terpenuhi/ bernilai benar (True),
maka statements() akan dieksekusi oleh sistem, namun jika kondisi
bernilai salah (False) maka statement akan dieksekusi oleh kondisi else.
Contoh :

Deklarasi variable nilai sebesar 90, dimana kondisi if yang pertama adalah nilai > 80 sehingga hasilnya benar (True), maka statement dieksekusi dengan menampilkan pesan "Selamat, Anda lulus !"
Selanjutnya deklarasi variable nilai
sebesar 50, maka pengujian kondisinya if nilai > 80 hasilnya adalah salah/False karena kondisi tidak terpenuhi,
selanjutnya pengujian akan dieksekusi oleh kondisi else yang menampilan pesan "Anda tidak lulus".
3. BLOK
IF.. ELIF .. ELSE ..
Percabangan if..elif..else digunakan
untuk menguji lebih dari dua kondisi. Kita bisa membuat kode program yang akan
menyeleksi beberapa kemungkinan yang bisa terjadi dengan ELIF. Bila kondisi if
benar, maka pernyataan di dalamnya yang dieksekusi. Bila salah, maka masuk ke
pengujian kondisi elif. Terakhir bila if atau elif salah (false), maka yang
dijalankan adalah yang di blok else.
Sintaksnya sbb :
Contoh :
Berikut ini ketetapan yang akan kita
gunakan:
·
Predikat
A untuk nilai >= 90
·
Predikat
B untuk nilai >= 80 < 90
·
Predikat
C untuk nilai >= 70 < 80
·
Predikat
D untuk nilai >= 60 < 60
·
Selain
itu, maka predikat E
SOURCE CODE
5. Percabangan
IF Bersarang (Nested IF)
IF
bersarang atau dalam bahasa Pythonnya Nested IF merupakan kondisi yang
didalamnya terdapat kondisi lagi.
Berikut ini merupakan Contoh program IF
Bersarang:
Kode program di atas akan memeriksa
terlebih dahulu nilai yang dimasukkan adalah lulus atau tidak. Setelah itu,
program akan memeriksa untuk menentukan kelas sesuai jenis kelamin.
STUDI KASUS
Program memeriksa dan mencari tahun kabisat
Tahun kabisat atau yang disebut dengan Leap
year adalah tahun yang mengalami penambahan satu hari dengan tujuan untuk
menyesuaikan penanggalan dengan tahun astronomi.
Dalam satu tahun tidak secara persis
terdiri dari 365 hari, tetapi 365 hari 5 jam 48 menit 45,1814 detik. Jika hal
ini tidak dihiraukan, maka setiap 4 tahun akan kekurangan hampir 1 hari
(tepatnya 23 jam 15 menit 0,7256 detik).
Maka untuk mengkompensasi hal ini, setiap 4
tahun sekali (tahun yang bisa dibagi 4), diberi 1 hari ekstra: 29 Februari.
Tetapi karena 5 jam 48 menit 45,1814 detik kurang dari 6 jam, maka tahun-tahun
yang bisa dibagi 100 (seperti tahun 1900), bukan tahun kabisat, kecuali bisa
dibagi dengan 400 (seperti tahun 2000)
Kondisi Kapan Suatu Tahun Dikatakan Kabisat
:
Tahun Kabisat dapat dinyatakan dengan
beberapa kondisi sbb :
1. Jika
sebuah tahun bisa dibagi 400, maka ia sudah pasti tahun kabisat.
2. Jika
suatu tahun bisa dibagi 100 dan tidak bisa dibagi 400, maka tahun tersebut
sudah pasti bukan tahun kabisat.
3. Jika
suatu tahun tidak bisa dibagi 400, juga tidak bisa dibagi 100, akan tetapi bisa
dibagi dengan 4, maka tahun itu adalah tahun kabisat.
4. Dan
yang selain itu (yang tidak bisa dibagi 400, dan 100, dan 4) maka dinyatatakan
bukan sebagai tahun kabisat.
Algoritma dalam tahun kabisat sbb :
1. Jika
tahun modulus 4 sama dengan 0 dan tahun modulus 100 tidak sama dengan 0 atau;
2. Tahun
modulus 400 sama dengan 0;
3. Maka
tahun tersebut merupakan tahun kabisat.
Penjelasan program diatas :
1. Pertama,
masukkan tahun yang akan dihitung dengan perintah tahun = int(input( ))
2. Kemudian
dengan perintah if( (tahun%4==0 and tahun%100!=0) or (tahun % 400 == 0)):, dicek
apakah tahun yang kita input di modulus 4 hasilnya 0 dan tahun di modulus 100
hasilnya tidak sama dengan 0 atau tahun di modulus 400 sama dengan 0
3. Lalu cetak hasil tahun yang
kita masukkan dapat terlihat merupakan tahun kabisat atau bukan