Search This Blog

Monday 22 August 2016

Kondisi IF dan SWITCH

kondisi if dan switch dalam bahasa C merupakan suatu kondisi dimana program akan melakukan seleksi dari apa yang diinput dan disesuaikan dengan perintah yang sudah tersisipkan dalam program. Pada umumnya kondisi ini digunakan untuk pemilihan menu pilihan yang memang user diwajibkan untuk memilih. Seperti halnya dalam pendidikan, untuk melanjutkan sekolah dari Sekolah Menengah Pertama terdapat dua pilihan, yaitu SMA atau SMK, dan itu Anda hannya dapat memilih satu, tidak dapat sekolah di keduanya secara bersamaan, dengan alasan jadwal yang bentrok. Atau bahkan pada saat Anda masuk SMA pun terdapat dua jalur yaitu IPA atau IPS, begitupun dengan SMK yang memiliki banyak jurusan didalamnya. Pada kondisi if dan switch ini keduanya memiliki peran yang sama, yaitu untuk memberikan pilihan, untuk perbedaannya sendiri hanya pada penulisan program, untuk yang lebih gemar menggunakan if, maka ia akan terbiasa dengan melihat percabangan program yang begitu banyaknya dengan penulisan yang banyak dianggap lebih rumit, sedangkan pada switch lebih dikenal simple dalam hal penulisan, namun tetap saja pada saat program yang memiliki percabangan pilihan maka akan tetap memiliki kerumitan. Namun jangan anggap semua ini rumit, dengan dibawa santai yang disertai hobi, maka semua itu takkan lagi menjadi masalah/kesulitan, semua itu akan menjadi lebih mengarah pada tantangan yang dirasa asik untuk dihadapi.

Pada kesempatan kali ini penulis akan lebih dahulu memperkenalkan dasarnya, dan diharapkan dengan dasar-dasar penulisan yang ada dalam contoh-contoh yang diberikan disini, maka pembaca akan dapat memahami dan tidak kebingungan walau menghadapi suatu program yang lebih berat. Karena dalam kondisi if dan switch ini sesungguhnya sama saja walau dalam program yang bagaimanapun itu akan berpatok pada dasarnya, dan disetiap percabangannyapun sama saja akan menggunakan kata yang sama, yaitu if ataupun switch. Hanya saja yang akan membedakan pada saat Anda menghadapi program yang lebih berat ialah statement true dan statement falsenya. Apa itu statement true dan false? Statement true ialah statement dimana pada saat program melakukan selection dan dalam program tersebut Anda menuliskan sesuatu, misal Anda menulis "if A==97", maka apabila true (benar bahwa user menginputkan angka 97 dalam inputan) maka program hanya akan menjalankan perintah yang ada didalamnya, begitupun pada saat user menginputkan angka yang bukan 97, maka program hanya akan menjalankan yang ada dalam statement false. Dan untuk switch pun sama saja jika Anda menuliskan "switch(A) { case 97: (statement true); break; default: (statement false); } ". Pada kondisi seperti itu, maka pada saat user mengisi inputan sesuai dengan yang ada dalam case (angka 97), maka program akan menjalankan perintah yang terdapat dalam case tersebut. Sedangkan pada saat user menginputkan angka yang bukan 97, maka program akan melakukan perintah sesuai dengan yang terdapat dalam defaultnya.

Berikut merupakan bentuk umum dan contoh sederhana dari kondisi if:
kondisi if - then
if(condition){
..............
statement true
..............
}
...............
next instruction
Pada kondisi tersebut, program akan menyeleksi, apakah sesuai atau tidak, jika sesuai maka program akan menjalankan statement true tersebut, dan pada saat tidak sesuai maka program akan meloncat pada next instuction. Oh ya satu lagi, untuk sesuai tidaknya program tidak harus bergantung pada inputan, seperti halnya pada saat Anda memiliki program untuk menghitung suatu rumus dan menyatakan apabila hasilnya sekian maka program melakukan apa dan pada saat hasilnya sekian program harus menjalankan perintah apa. Sekedar megingatkan, dikhawatirkan ada salah pemahaman dengan gambaran yang diberikan sebelumnya. Karena yang dijelaskan diatas hanyalah sebagai gambaran agar tidak terlalu bingung untuk pertama mempelajarinya. Dan untuk contoh program diatas, sebagai berikut:
#include<stdio.h>
main(){
int A=90, B=7, C=A+B;
if(C==97){
printf("C = 97");
}
}

#include<stdio.h>
main(){
int A;
scanf("%i", &C);
if(C==97){
printf("C = 97");
}
}
Dari contoh diatas terlihat kondisi if yang keduanya menyeleksi sebuah nilai, namun bedanya ialah pada program pertama kondisi if menyeleksi hasil hitung dari A+B, sedangkan pada program yang kedua, program melakukan inputan terlebih dahulu, dan yang diseleksi ialah hasil inputan dari user, apabila user menginputkan angka 97, maka program akan mencetak ke layar C=97, namun pada saat program yang pertama maupun kedua seleksi angkanya tidak sesuai maka program akan mencetak kosong ke layar (cetak kosong bukan mencetak angka 0). Itu semua mengenai kondisi if -then, nah berikut ini merupakan kondisi if - then - else:
if(condition){
..............
statement true
..............
} else {
...............
statement false
...............
}
next instuction
Pada kondisi tersebut, program akan menyeleksi, apakah sesuai atau tidak, jika sesuai maka program akan menjalankan statement true tersebut, dan pada saat tidak sesuai maka program akan menjalankan statement false hingga setelah selesai program menjalankan perintah yang ada didalam kondisi tersebut maka program akan melanjutkan pada next instuction. Dan untuk contoh program diatas, sebagai berikut:
 #include<stdio.h>
main(){
int A;
 scanf("%i", &A);
if(A==97){
printf("benar");
}else{
printf("salah");
}
}
Program diatas merupakan bentuk-bentuk dasar dari kondisi if, masih sederhana untuk dilihat, karena itu semua belum termasuk kondisi if bersarang maupun kondisi if bertingkat. Tapi apabila Anda sudah memahami program dasar untuk kondisi if tersebut, maka kondisi if bersarang maupun if bertingkat takkan menjadi masalah bagi Anda. Kembali penulis mengingatkan, bahwa pada suatu program yang paling penting ialah Algoritmanya, jika alur pikir Anda sudah matang, maka program dengan kondisi if seperti apapun akan terasa mudah hanya dengan memahami maksud dari program apa yang harus Anda buat tersebut. Dan berikut merupakan contoh dari program C dengan menggunakan kondisi switch () & case:
#include<stdio.h>
main(){int A;
scanf("%i", &A);
switch(A){
case 97: printf("benar");
break;
default: printf("salah");
}
}
Pada kondisi diatas, sama halnya dengan kondisi if - then - else, dimana apabila yang diinputkan oleh user ialah angka 97, maka program akan menjalankan perintah yang ada didalam "case 97" tersebut. Sedangkan pada saat angka yang diinputkan oleh user ternyata bukan angka 97, maka program akan mencetak tulisan "salah&quot ke layar. Dan apabila ingin sama dengan kondisi if - then yang tidak memiliki statement false, maka Anda tinggal menghapus perintah dengan kata default. Maka pada saat setelah program melakukan seleksi dan ternyata false, maka program akan meloncat pada next instruction. Jadi setelah mempelajari apa program sederhana untuk kondisi if dan switch diatas, dapat kita lihat hasil dari program tersebut yang ternyata memang tidak jauh berbeda untuk perintahnya, hanya kata-kata per programnya saja yang membedakan, pada if terdapat kata else, dan pada switch terdapat case dan default. Namun tetap saja semua itu akan berjalan sesuai dengan perintah yang diberikan sang pembuat program. Dan kembali pada masalah programnya, tetap saja kondisi if dan switch hanyalah kondisi untuk sebuah selection, dan selanjutnya program hanya akan menjalankan apa yang ada didalam statement true dan falsenya, dan atau untuk next instuction. Dengan demikian kita dapat menyebutkan bahwa kondisi if dan switch hanyalah merupakan pengarah program (program harus menjalankan perintah yang mana).

No comments:

Post a Comment