Upload presentasi
Presentasi sedang didownload. Silahkan tunggu
1
Algoritma dan Dasar Pemograman
Pertemuan 5 Struktur Kontrol Percabangan Yudha Dwi P. N.
2
Overview Materi hari ini akan membahas mengenai bagaimana membuat program yang dapat mengambil keputusan berdasarkan input dari pengguna atau hasil dari suatu perhitungan Operator Relasional Struktur Kontrol : Percabangan Operator Logical Nested If
3
Operator Relasional Ada beberapa operator relasional :
> : lebih besar >= : lebih besar atau sama dengan < : lebih kecil <= : lebih kecil atau sama dengan == : sama dengan != : tidak sama dengan
4
Operator Relasional Operator relasional melambangkan hubungan antara dua entitas Entitas tersebut bisa berupa variabel, konstanta maupun fungsi Nilai dari hubungan tersebut adalah TRUE atau FALSE
5
Operator Relasional Contoh : 5 > 3 bernilai benar (TRUE)
6 < 2 bernilai salah (FALSE) 45 != 34 bernilai benar (TRUE) (5 + 4) <= (3x3) bernilai benar (TRUE) 6/7 >= 12/17 bernilai benar (TRUE)
6
Operator Relasional Hasil dari operator relasional adalah nilai TRUE atau FALSE Nilai TRUE bernilai sama dengan 1, sedangkan FALSE bernilai sama dengan 0.
7
Operator Relasional #include <stdio.h> void main() {
Contoh : #include <stdio.h> void main() { printf(“ 3 < 5 bernilai : %d\n”, 3 < 5); printf(“15 >= 3 * 5 bernilai : %d\n”, 15 >= 3 * 5); printf(“ 8 == 7 bernilai : %d\n”, 8==7); printf(“11<=5+4 bernilai : %d\n”, 11<=5+4); }
8
Operator Relasional Outputnya : 3 < 5 bernilai : 1
9
Struktur Kontrol : Percabangan
Program dapat menentukan operasi/perintah mana yang akan dijalankan sesuai kondisi tertentu Bentuknya seperti pilihan atas alternatif-alternatif yang disediakan
10
Struktur Kontrol : Percabangan
Ada 3 macam perintah percabangan di C If (kondisi) <statement> { … <statement> …} else { … <statement> …} switch (expression) { … <statement> … }
11
Struktur Kontrol : Percabangan
Perintah percabangan pertama, sintaksnya : If (kondisi) <statement> (kondisi) diisi dengan operator relasional Contoh : (nilai > 80) <statement> adalah perintah yang dijalankan jika kondisi terpenuhi Contoh : printf(“Nilai anda : A”);
12
Struktur Kontrol : Percabangan
Flowchart
13
Struktur Kontrol : Percabangan
Lengkapnya menjadi : … if(nilai > 80) printf(“Nilai anda : A”);
14
Contoh kasus 1 Contoh: Algoritma menentukan apakah sebuah bilangan bulat merupakan bilangan genap. Algoritma BILANGAN_GENAP { Menentukan apakah sebuah bilangan bulat yang dibaca dari piranti masukan merupakan bilangan genap } DEKLARASI int bil; DESKRIPSI : scanf(bil); if bil mod 2 = 0 printf(‘bilangan genap’) endif
15
Contoh kasus 2 Program BILANGAN_GENAP; { Menentukan apakah sebuah bilangan bulat yang dibaca dari piranti masukan merupakan bilangan genap } (* DEKLARASI *) int bil; (* DESKRIPSI *) void main(){ Printf(‘Masukkan suatu bilangan bulat : ‘); scanf(bil); if (bil mod 2 = 0) printf(‘bilangan genap’); (*endif*) }
16
Struktur Kontrol : Percabangan
Pada bentuk If (kondisi) <statement> Ada kemungkinan untuk menjalankan lebih dari 1 perintah, menjadi: If (kondisi) { … } Compound Statement
17
Struktur Kontrol : Percabangan
Contoh: … if(nilai > 80) { printf(“selamat anda lulus alpro\n”); printf(“nilai anda : A”); }
18
Struktur Kontrol : Percabangan
Perintah percabangan kedua, sintaksnya : if(kondisi) <statement A> else <statement B> Mirip dengan bentuk pertama, tapi yang ini ditambah dengan else, yang memuat perintah-perintah yang dijalankan jika (kondisi) tidak terpenuhi
19
Struktur Kontrol : Percabangan
Dalam struktur IF-THEN-ELSE: aksi1 akan dilaksanakan jika kondisi bernilai benar (true) jika kondisi bernilai salah (false) maka aksi2 yang akan dilaksanakan Statemen else menyatakan ingkaran (negation) dari kondisi.
20
Contuh kasus 1 Algoritma MAKSIMUM { Menentukan bilangan terbesar dari dua bilangan bulat } DEKLARASI int A, B; DESKRIPSI : scanf(A,B) if (A >= B) printf (‘Bilangan terbesar : ’,A) else {B <=A } printf(‘Bilangan terbesar : ’,B) endif
21
Contuh kasus 2 program MAKSIMUM; { Menentukan bilangan terbesar dari dua bilangan bulat } (* DEKLARASI *) int A, B; (* DESKRIPSI *) Void main(){ scanf(‘Masukkan bilangan A : ‘);readln(A); scanf(‘Masukkan bilangan B : ‘);readln(B); if A > B then printf(‘Bilangan terbesar :%d ’,A) else printf(‘Bilangan terbesar : %d’,B); (*endif*) }
22
Struktur Kontrol : Percabangan
Contoh: Bila jumlah membolos lebih dari 5 maka tampilkan pesan “tidak boleh ujian”, jika tidak maka tampilkan pesan “boleh ujian”. … if(bolos>5) printf(“tidak boleh ujian”); else printf(“boleh ujian);
23
Struktur Kontrol : Percabangan
Jumlah alternatif kondisi <else> bisa lebih dari 1, seperti contoh berikut : … if(suhu>=100) printf(“berwujud gas”); else if(suhu<=0) printf(“wujud padat”); else printf(“wujud cair”);
24
Struktur Kontrol : Percabangan
Pada C, kondisi yang bernilai tidak sama dengan 0 (nol) berarti bernilai TRUE, jika nilainya 0 maka bernilai FALSE. Contoh: If(4+5) bernilai TRUE Bagaimana dengan if(4-5)? Apa nilainya?
25
Struktur Kontrol : Percabangan
Bentuk ketiga menggunakan switch Formatnya: switch(expression) { case <constant expr> : <statement>; break; … default : <statement>; }
26
Struktur Kontrol : Percabangan
switch (expression) Expression di sini biasanya adalah variabel/fungsi Constant-expr : konstanta Berupa konstanta, misal ‘A’, 4, 20 dan sebagainya Kode program menjadi lebih mudah dibaca bila ditulis menggunakan switch dibanding if-else-if default : <statement> perintah yang dijalankan bila tidak memenuhi kriteria-kriteria yang ada
27
Struktur Kontrol : Percabangan
Contoh: switch(nilai) { case ‘A’ : bobot = 4; break; case ‘B’ : bobot = 3; case ‘C’ : bobot = 2; default : bobot = 1; }
28
Struktur Kontrol : Percabangan
Keyword break digunakan untuk keluar dari operasi switch. Jika tidak ditemukan break, maka operasi akan dilanjutkan ke constant-expression berikutnya.
29
Operator Logical Pada struktur kontrol percabangan, (kondisi) yang dicek selain menggunakan operator relasional juga dapat dikombinasikan dengan operator logical Operator logical : AND (&&), OR (||), NOT (!)
30
Operator Logical Operator precedence ! not * / perkalian dan pembagian
< <= => > == != && AND || OR
31
Operator Logical Operator Logical AND A B A && B TRUE FALSE
32
Operator Logical Operator Logical OR A B A || B TRUE FALSE
33
Operator Logical Operator Logical NOT A !A TRUE FALSE
34
Operator Logical Apa nilai dari expression berikut ? (5==5)||(6==7)
(!5)||(5>=6) && (3==3) !(4 < 3) && (5<=10) || (‘b’ < ‘d’) && (!0)
35
Operator Logical Kita dapat menggunakan operator logical untuk digunakan sebagai pengecekan kondisi pada percabangan if Contoh: if((nilai>40) && (nilai < 60)) printf(“nilai huruf : C”); else if((nilai > 61) && (nilai < 80)) printf(“nilai huruf : B”); else if(nilai > 81) printf(“nilai huruf : A”);
36
Nested If Jika diperlukan, kita bisa melalukan operasi percabangan dalam percabangan (nested if) Jika statement di dalam if tersebut lebih dari satu, maka perlu ditambahkan curly bracket { } untuk mengelompokkannya
37
Percabangan Kompleks Percabangan dimana kondisi pemilihan tidak hanya satu tetapi bisa terdiri dari banyak alternatif serta perintah-perintah yang dikerjakannya juga bisa lebih dari satu
38
Nested IF (1)
39
Nested IF (2)
40
Nested IF (3)
41
Nested IF (4)
42
Nested IF (5)
43
Nested IF (6)
44
Nested If : Contoh int a = 10; int b = 15; int c = 20; if(a>b) { if(a>c) printf(“a yang terbesar”); else printf(“c yang terbesar”); } else if (b>c) { if(b>a) printf(“b yang terbesar”); } else if(c>a) { if(c>b) }
45
Latihan Soal Latihan Soal
Buatlah program untuk menentukan apakah penghasilan per bulan yang dimasukkan kena pajak atau tidak (kena pajak jika penghasilan setahun lebih besar sama dengan Rp ) Buatlah program untuk menentukan bilangan yang terletak di tengah antara tiga bilangan yang dimasukkan pengguna. Misal : 35, 12, 27 berarti bilangan yang di tengah adalah 27
Presentasi serupa
© 2024 SlidePlayer.info Inc.
All rights reserved.