S election Statement

4.2 S election Statement

Selecti on statement digunakan untuk m enentukan bagian mana dari program yang akan dieksek usi selanjutnya. C# menye iakan dua jenis selectio d n statement, yaitu if dan switch statement.

4.2.1 i f

If stat ement digunakan untu k mengeksekusi kode program jika kondisi tertentu terpenu hi. Misalnya dal am hal melakukan operasi pembagian, program harus mencek terlebih dahulu apakah pembagi bernilai 0 atau tidak agar tidak terjadi runtime error.

u s i ng Sy s t em;

names pac e or g. got dot net . ot ak {

c l as s Cont ohI f {

publ i c s t at i c v oi d Mai n2( ) {

Cons ol e. Wr i t e( " Mas uk k an ni l ai x : " ) ;

i nt x = i nt . Par s e( Cons ol e. ReadLi ne( ) ) ;

Cons ol e. Wr i t e( " Mas uk k an ni l ai y : " ) ;

i nt y = i nt . Par s e( Cons ol e. ReadLi ne( ) ) ;

if ( y ! =0)

{ doubl e has i l = x / y ; Cons ol e. Wr i t eLi ne( " Has i l pembagi an x / y =

h as i l ) ;

Cons ol e. ReadLi ne( ) ; }

Dalam contoh di atas, operasi pembagian dilakukan hanya jik a y tidak bernilai 0. Bagaimana jika y bernilai 0? Program tidak akan mengeksekusi apa- apa jika nilai y sama d engan 0.

4.2.2 i f-else

Satu v ariasi dari if state ment adalah if-else. Dalam statement ini, selain menentukan langka h apa yang harus dilakukan jika suatu kondisi terpenuhi, kita juga bisa menentukan langkah ap a yang mesti dilakukan kalau kondisi tersebut TIDAK terpe nuhi. Masih berhubungan dengan conto h sebelumnya, jika y bernilai 0, kita ingin mencetak pesan ke layar untuk memberitahukan kepa da user bahwa operasi pembagian tidak bisa dilakuk an karena pembagi bernilai 0.

us i ng Sy s t em;

names p ac e or g. got dot net . ot ak {

c l as s Cont ohI f El s e { publ i c s t at i c v oi d Mai n( ) {

Cons ol e. Wr i t e( " Mas uk k an ni l ai x : " ) ;

i nt x = i nt . Par s e( Cons ol e. ReadLi ne( ) ) ;

Cons ol e. Wr i t e( " Mas uk k an ni l ai y : " ) ;

i nt y = i nt . Par s e( Cons ol

e. ReadLi ne( ) ) ;

i f ( y ! =0) { doubl e has i l = x / y ;

Cons ol e. Wr i t eLi ne( " Has i l pembagi an x / y = { 0} " , has il);

} el s e {

Cons ol e. Wr i t eLi ne( " Er r or : y ber ni l ai 0" ) ;

Cons o l e. ReadLi ne( ) ;

4.2.3 s witch

Ser i ngk al i dal am pr ogr am k i t a i ngi n mel ak uk an pengec ek an unt uk beber apa k emungk i nan ni l ai da r i s uat u v ar i abl e. Bi l a i ni di l ak uk an d engan menggunak an i f , bent uk ny a ak an s eper t i ber i k ut :

us i ng Sy s t em;

names pac e or g. got dot net . ot ak {

c l as s Cont ohI f El s eI f {

publ i c s t at i c v oi d Mai n( ) {

t eTi me. Now. Day Of Week ==Day Of Week . Sunday ) i f ( Da

Cons ol e. Wr i t eLi ne( " Sek ar ang har i Mi nggu" ) ;

el s e i f ( Dat e Ti me. Now. Day Of Week ==Day Of Week . Monday )

Cons ol e. Wr i t eLi ne( " S ek ar ang har i Seni n" ) ;

} el s e i f ( Dat eTi me. Now. Day Of Week ==Day Of Week . Tues day )

{ s ol e. Wr i t eLi ne( " Sek ar ang har i Sel as a" ) ; Con

el s e {

Cons ol e. Wr i t eLi ne( " Sek ar ang har i apa y a?" ) ;

Cons ol

e. ReadLi ne( ) ;

Walaup un cara di atas dapat digunakan dan b enar, ada cara lain yang lebih sederhana yaitu d engan menggunakan switch. C ontohnya adalah sbb.:

us i ng Sy s t em;

names pac e or g. g ot dot net . ot ak {

c l as s Cont ohSwi t c h {

publ i c s t at i c v oi d Mai n( )

s wi t c h ( Dat eTi me. Now. Day Of Week ) {

c as e Day Of Week . Sunday : {

Cons ol e. Wr i t eLi ne( " Sek ar ang har i Mi nggu" ) ;

br eak ;

c as e Day Of Week . Monday : {

Cons ol e. Wr i t eLi ne( " Sek ar ang har i Seni n" ) ;

br eak ; }

c as e Day Of Week . Tues day : { s ol e. Wr i t eLi ne( " Sek ar ang har i Sel as a" ) ; Con ak ;

br e

def aul t : {

Cons ol e. Wr i t eLi ne( " Sek ar ang har i apa y a?" ) ;

br eak ; } }

Cons ol e. R eadLi ne( ) ; }

Perhatikan hal-hal berikut dari contoh di atas:

V ariabel yang dicek bisa bernilai a ngka atau string. Bandingkan dengan C yang hanya bi sa m enggunakan variab el bertipe angka.

Keywo rd break harus digunakan untuk setiap case. Dalam C, break tidak mesti diguna kan. Bagian default dari sw itch berfungsi seper t else dalam if, artinya jika tidak ada kecoco ka n da m ca la se-case lainnya, maka bagian dalam case default yang akan dieksek usi. Bagian ini sebaiknya dib iasakan untuk diisi.