Presentasi sedang didownload. Silahkan tunggu

Presentasi sedang didownload. Silahkan tunggu

Algoritma dan Dasar Pemograman

Presentasi serupa


Presentasi berjudul: "Algoritma dan Dasar Pemograman"— Transcript presentasi:

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


Download ppt "Algoritma dan Dasar Pemograman"

Presentasi serupa


Iklan oleh Google