230 likes | 778 Views
Struktur Pilihan. Pernyataan if.. Pernyataan switch. Pengenalan. Melaksanakan salah satu arahan apabila pilihan diberikan. Ungkapan bersyarat perlu diletakkan kerana pilihan akan dilakukan berdasarkan syarat diberi. Terdapat dua jenis struktur pilihan iaitu: Pernyataan if..
E N D
Struktur Pilihan Pernyataan if.. Pernyataan switch..
Pengenalan • Melaksanakan salah satu arahan apabila pilihan diberikan. • Ungkapan bersyarat perlu diletakkan kerana pilihan akan dilakukan berdasarkan syarat diberi. • Terdapat dua jenis struktur pilihan iaitu: • Pernyataan if.. • Pernyataan switch..
Pernyataan if.. • Digunakan untuk membuat satu pilihan sahaja. • Keputusan; Ya atau Tidak. • Bentuk umum: if (syarat) pernyataan; • Contoh bentuk cartalir Syarat? Ya Pernyataan C Tidak
Pernyataan if.. • Pernyataan C boleh terdiri daripada: • Satu pernyataan sahaja • Contoh: if (jantina == “P”) printf(“Jantina: Perempuan”); • Satu blok pernyataan C, menggunakan beberapa pernyataan dgn gunakan simbol { } • Contoh: if (jantina == “P”) { status = 0; printf(“Jantina: Perempuan”); printf(“Lelaki dilarang masuk”); }
Pernyataan if.. • Prosedur perlaksanaan • Syarat akan dikaji. • Jika benar, pernyataan atau blok pernyataan akan dilaksanakan. • Jika salah, pernyataan akan diabaikan.
Pernyataan if.. else • Digunakan untuk laksanakan pilihan dua hala. • Jika benar, satu pernyataan atau blok akan dilaksanakan (pilihan A). • Jika salah, satu lagi pernyataan atau blok akan dibuat (pilihan B). • Bentuk umum: if (syarat) pilihanA; else pilihanB;
Pernyataan if.. else • Contoh bentuk cartalir Syarat Tidak Ya Pernyataan 1 Pernyataan 2
Pernyataan if.. else if • Menggunakan beberapa pernyataan if berturutan. • Mempunyai beberapa pilihan berdasarkan kepada beberapa syarat. • Merujuk kepada perkara yang sama. • Contoh: if (status==1) printf(“Johor”); if (status==2) printf(“Kedah”); if (status==3) printf(“Kelantan”); if (status==4) printf(“Melaka”);
Pernyataan if.. else if • Perlaksanaan aturcara • if (status==1) • printf(“Johor”); • if (status==2) • printf(“Kedah”); • if (status==3) • printf(“Kelantan”); • if (status==4) • printf(“Melaka”); • if (status==1) • printf(“Johor”); • else if (status==2) • printf(“Kedah”); • else if (status==3) • printf(“Kelantan”); • else if (status==4) • printf(“Melaka”);
Pernyataan if/ if.. else bersarang • Timbul situasi syarat diberi dalam beberapa aras untuk menentukan pilihan. • Apabila satu syarat dipenuhi, terdapat syarat lain yang perlu dipenuhi juga dan seterusnya. • Contoh: Remaja? jika Ya: Pelajar? jika Ya: Yuran adalah RM200 jika Tidak: Umur<=30? jika Ya: Yuran adalah RM300 jika Tidak: Yuran adalah RM350 jika Tidak: Pelajar? jika Ya: Yuran adalah RM400 jika Tidak: Yuran adalah RM500
Pernyataan if/ if.. else bersarang • Contoh aturcara if (Remaja) { if (Pelajar) Yuran=200; else { if (umur<=30) Yuran=300; else Yuran=350; } } else { if (Pelajar) Yuran=400; else Yuran=500; }
Pernyataan if/ if.. else bersarang Y Y • Contoh Cartalir Remaja? Pelajar? Yuran=200 T T Y Umur<=30? Yuran=300 T Yuran=350 Y Pelajar? Yuran=400 T Yuran=500
Pernyataan switch.. • Satu alternatif dalam struktur pilihan pelbagai hala. • Berdasarkan satu pembolehubah atau ungkapan kawalan yg hasilkan nilai aksara atau integer. • Format sintaks: switch (ungkapan_kawalan) { case label_1: arahan_perlaksanaan; case label_2: arahan_perlaksanaan; case label_3: arahan_perlaksanaan; : : default: arahan_perlaksanaan; }
Pernyataan switch.. • label1, label2 dan seterusnya adalah hasil ungkapan kawalan- dalam bentuk integer atau aksara. • Arahan perlaksanaan- satu atau lebih dari satu pernyataan C dan tidak perlu diblok. • Tetapi pernyataan terakhir setiap label (kecuali label terakhir) mesti ada pernyataan break. • break- meninggalkan pernyataan switch secara terus -> terus ke pernyataan selepas switch. • default- menangani kes- kes lain yang tidak dilabelkan.
Pernyataan switch.. • Contoh: • if (status==1) • printf(“Johor”); • else if (status==2) • printf(“Kedah”); • else if (status==3) • printf(“Kelantan”); • else if (status==4) • printf(“Melaka”); • else • printf(“Negeri Lain”); • switch (status) • { • case 1:printf(“Johor”); • break; • case 2:printf(“Kedah”); • break; • case 3:printf(“Kelantan”); • break; • case 4:printf(“Melaka”); • break; • default:printf(“Negeri Lain”); • }
Pernyataan switch.. • Cartalir switch bagi contoh printf(“Johor”); 1 printf(“Kedah”); 2 3 printf(“Kelantan”); 4 printf(“Melaka”); printf(“Negeri Lain”); default
Pernyataan switch.. • Sekiranya label yang berlainan mempunyai arahan perlaksanaan yang sama, label- label tersebut boleh dihimpunkan. • Contoh switch (gred) { case ‘a’: case ‘A’: printf(“Cemerlang\n”); break; case ‘b’: case ‘B’: printf(“Baik\n”); break; : }
Pengolah Bersyarat ‘?’ • Digunakan untuk pilihan 2 alternatif. • Sesuai untuk pilihan yang mudah. • Format: Ekspresi_1 ? Ekspresi_2 : Ekspresi_3; • Ekspresi_1- merupakan ungkapan kawalan dan dikaji. • Ekspresi_2- arahan perlaksanaan dilaksanakan jika benar. • Ekspresi_3- arahan perlaksanaan jika salah.
Pengolah Bersyarat ‘?’ • Contoh: (jantina==‘P’) ? printf(“Perempuan”) : printf(“Lelaki”); • Pernyataan di atas setara dengan if (jantina==‘E’) printf(“Perempuan”); else printf(“Lelaki”);
Pernyataan goto • Merupakan arahan cabangan. • Menyebabkan aturcara pergi ke lokasi yang dilabelkan. • Tidak digalakkan kerana aturcara menjadi tidak berstruktur.