Tutorial bahasa C
Pada Bab 2 kali ini, saya akan membahas Tutorial Bahasa C yang meliputi:
1. percabangan di bahasa C ( if dan switch )
2. Nested if di bahasa C
3. Nested Switch di bahasa C
langsung saja kita simak materi tutorial Bahasa C Bab 2...
Konsep dasar branching dan variasinya
1. Statement if dengan satu kondisi
Bentuk umum atau kerangka dari blok percabangan dengan statemen if sebagai berikut. Flowchart-nya :
Potongan kodenya :
if (kondisi)
{
statemen_yang _akan_dieksekusi;
statemen_yang _akan_dieksekusi;
}
2. Statement if dan else dengan satu kondisi
Bentuk umum atau kerangka dari blok percabangan dengan statemen if dan else sebagai berikut.
Flowchart-nya :
Flowchart-nya :
Potongan Kodenya :
if (kondisi) {
statemen_yang_akan_dieksekusi;
statemen_yang_akan_dieksekusi;
}
else {
statemen_yang_akan_dieksekusi;
}
Saat memasuki statemen if, program akan mengecek kondisi yang dituliskan setelah statemen if. Jika memenuhi, program hanya akan menjalankan statemen-statemen yang terdapat dalam blok tersebut. Jika tidak, maka program hanya akan menjalakan statemen-statemen yang terdapat dalam blok else.
3. Statement if dan else dengan banyak kondisi
Perhatikan flowchart untuk percabangan ini:
Potongan kodenya:
if (kondisi) {
statemen_yang_akan_dieksekusi;
statemen_yang_akan_dieksekusi;
}
else if (kondisi2) {
statemen_yang_akan_dieksekusi;
}
else {
statemen_yang_akan_dieksekusi;
}
Program akan mengecek kondisi1, jika memenuhi maka program akan menjalankan statemen-statemen pada percabangan tersebut. Jika tidak, dilakukan pengecekan lagi terhadap kondisi2, dan statemen-statemen dalam blok tersebut akan dijalankan jika kondisi2 memenuhi. Jika kondisi1 dan kondisi2 tidak memenuhi, maka yang dijalankan adalah blok else terakhir yang tidak memerlukan pengecekan kondisi sebelumnya.
contoh:
#include <stdio.h>
int main()
{
char nilai;
printf("masukkan nilai DP anfa (A/B/C/D) : ");
scanf("%c",&nilai);
if (nilai=='A')printf ("anda lulus matkul DP dengan nilai A!");
else if (nilai=='B')printf ("anda lulus matkul DP dengan nilai B!");
else if (nilai=='C')printf ("anda lulus matkul DP dengan nilai C!");
else if (nilai=='D')printf ("anda tidak lulus matkul DP dengan nilai D!");
else if (nilai=='E')printf ("anda tidak lulus matkul DP dengan nilai E!");
else printf ("Nilai tidak terdeteksi!");
return 0;
}
Hasil eksekusi :
=> Jika masukan adalah karakter ‘A’
=> Jika masukan adalah karakter ‘A’
Program mengecek apakah nilai masukan sama dengan ‘A’, karena sama maka akan menjalankan statemen di dalam bloknya lalu percabangan selesai.
=> Jika masukan adalah karakter ‘E’
Program mengecek apakah nilai masukan sama dengan ‘A’, ternyata tidak. Lalu mengecek apakah nilainya ‘B’, ternyata juga tidak, dan seterusnya hingga sampai pada kondisi yang memenuhi, yaitu apabila nilai sama dengan ‘E’. Program kemudian menjalankan statemen dalam blok tersebut dan percabangan selesai.
=> Jika masukan adalah karakter ‘X’
Program akan mengecek seperti sebelumnya hingga kondisi ‘E’, namun ternyata tidak ada kondisi yang memenuhi sehingga menjalankan statemen di dalam blok else lalu keluar percabangan selesai.
- Nested if
Flowchart untuk nested if:
Nested if adalah percabangan di dalam percabangan. Untuk lebih jelasnya dapat dilihat struktur dibawah ini:
Di dalam sebuah blok if dapat diisi dengan if lagi kemudian di dalam blok if tersebut masih bisa diisi dengan if lagi. Hal ini tentu harus disesuaikan dengan kebutuhan. Untuk lebih jelasnya dapat dilihat pada contoh program di bawah ini.
Contoh:
Contoh:
Beberapa contoh hasil eksekusi:
- Dengan input 0
Jika input 0 maka program akan masuk pada if pertama kemudian mem-print “angka 0” kemudian percabangan selesai.
- Dengan input 23
Untuk input 23 pertama program akan mengecek apakah input sama dengan 0 karena tidak maka pengecekan akan dilanjtukan ke kondisi input>0 (mengecek apakah ini adalah bilangan positif) karena kondisi terpenuhi maka program akan masuk ke dalam blok tersebut. Ternyata di dalam blok if ini terdapat pengecekan lagi menggunakan sisa bagi (‘%’) untuk mengecek apakah bilangan tersebut ganjil atau genap. Jika sisa baginya dengan 2 adalah 0 maka bilangan tersebut adalah bilangan positif genap jika tidak makan bilangan tersebut positif ganjil. Untuk input 23 maka
akan masuk ke bagian else sehingga output yang keluar adalah “bilangan ganjil positif”.
akan masuk ke bagian else sehingga output yang keluar adalah “bilangan ganjil positif”.
- Dengan input 10
Penjelesan mirip seperti pada input 23 hanya saja pada if kedua masuk pada bagian (input%2==0) sehingga output adalah “bilangan genap positif”
- Dengan input -89
Untuk input -89 program akan masuk ke bagian else dari percabangan yang pertama. Kemudian proses yang dilakukan sama dengan di atas.
- Percabangan dengan statemen switch
Statemen switch digunakan untuk melakukan pemilihan terhadap ekspresi kondisi yang memiliki nilai-nilai konstan. Oleh karena itu, kondisi yang digunakan harus berupa bilangan bulat atau karakter. Kerangka dari blok switch sebagai berikut.
Pada bagian akhir dari setiap blok harus ditutup dengan break agar setelah menjalankan statemen-statmen pada blok tersebut, percabangan akan selesai. Jika tidak, maka program akan menjalankan juga kode pada blok setelahnya, tanpa mengecek kondisinya. Blok default bersifat opsional, dijalankan jika tidak ada kondisi yang memenuhi:
Contoh hasil eksekusi:
- Jika nilai masukan adalah karakter ‘B’
Program mengecek apakah nilai dari masukan sama dengan ‘B’. Karena sesuai maka statemen-statemen dalam blok tersebut akan dijalankan dan keluar dari percabangan dengan statemen break.
- Jika nilai masukan adalah karakter ‘D’
Program mengecek apakah nilai dari masukan sama dengan ‘A’, ternyata tidak, lalu mengecek apakah ‘B’, ternyata juga tidak, begitu seterusnya hingga menemui kondisi yang terpenuhi, yaitu jika nilainya ‘D’. Program kemudian menjalankan statemen dalam blok tersebut lalu percabangan selesai.
- Jika nilai masukan adalah karakter ‘Z’
Program akan mengecek seperti sebelumnya hingga kondisi ‘E’, namun tidak menemukan kondisi yang memenuhi sehingga menjalankan blok default lalu percabangan selesai.
Nah itu tadi Tutorial Bahasa C Bab 2 tentang percabangan. Tunggu tutorial tutorial bahasa C yang lainnya di fuad-dary.blogspot.com
0 komentar:
Posting Komentar