Presentasi sedang didownload. Silahkan tunggu

Presentasi sedang didownload. Silahkan tunggu

MATERI 8 CHOICE / PILIHAN.

Presentasi serupa


Presentasi berjudul: "MATERI 8 CHOICE / PILIHAN."— Transcript presentasi:

1 MATERI 8 CHOICE / PILIHAN

2 Pengantar Program yang telah menggunakan repetition dan procedure merupakan program yang agak rumit, namun jalannya program masih dapat ditebak dan diketahui karena selalu mengerjakan sequence yang sama. Hal ini seperti robot yang diprogram untuk mengerjakan sesuatu secara berulang-ulang tanpa memperhatikan kondisi apa pun. Misalnya saja printer yang bekerja hanya berdasarkan sequence, procedure dan repetitition akan terus mencetak sebanyak yang diperintahkan tanpa melihat kondisi apakah ada kertas atau tidak.

3 Pengantar Pembahasan Materi ini adalah tentang choice/Pilihan dimana sebuah program dapat dibuat untuk mengerjakan hal yang berbeda-beda tergantung dari kondisi saat itu.

4 Choice Sederhana Contoh sederhana, misalnya sebuah robot yang diciptakan untuk memotong sebuah batang besi menjadi beberapa bagian. Pada batangan besi telah diberikan tanda, berapa banyak potongan besi yang harus dihasilkan. Dengan melihat tanda tersebut, robot akan memotong besi menjadi potongan yang lebih kecil sesuai dengan jumlah yang tercantum.

5 Choice Sederhana repeatedly if ”tanda 2” on label: lakukan proses potong 2 if ”tanda 3” on label: lakukan proses potong 3 until switched off Program 8.1

6 Choice Sederhana Program 8.1 akan berulang-ulang dikerjakan oleh robot selama robot tersebut “hidup”. Jika pada batang besi tertulis tanda 2 maka yang dikerjakan adalah proses pemotongan menjadi 2 bagian. Begitu pun jika yang tertera adalah tanda 3, maka yang dikerjakan adalah proses pemotongan menjadi 3 bagian. Kondisi pilihan yang diberikan memiliki cela, yaitu misalnya tidak ada tanda pada batang besi, atau tanda yang diberikan cacat dan tidak terbaca, atau tanda yang tertera bukan tanda 2 maupun tanda 3, maka robot tidak dapat mengambil keputusan, proses apa yang dikerjakan. Hal ini dapat menyebabkan robot berhenti berfungsi atau melakukan proses yang tidak terkendali.

7 Choice Sederhana Program 8.2
Program 8.1 dapat ditulis dengan pilihan yang lebih lengkap, untuk kasus tanda yang tertera bukan tanda 2 maupun tanda 3. repeatedly if ”tanda 2” on label : lakukan proses potong 2 if ”tanda 3” on label : lakukan proses potong 3 if neither ”tanda 2” nor ”tanda 3” : donothing until switched off Program 8.2

8 Choice Sederhana Pada Program 8.2, proses yang dikerjakan jika tanda yang tertera bukan 2 maupun 3 adalah donothing atau tidak melakukan apa-apa pada saat itu.

9 Instruksi Select Select adalah perintah yang digunakan pada pemrograman untuk menentukan suatu aksi berdasarkan kondisi tertentu. Struktur dasar dari perintah select adalah: select kondisi 1 : aksi 1 kondisi 2 : aksi 2 kondisi 3 : aksi 3 ... kondisi n : aksi n endselect

10 Instruksi Select Kata select dan endselect merupakan awal dan akhir dari instruksi ini. Kondisi merupakan sesuatu yang menjadi acuan dalam mengerjakan suatu proses. Aksi merupakan rangkaian perintah yang dikerjakan untuk suatu kondisi tertentu. Jumlah kondisi dan aksi tidak terbatas. Yang akan dikerjakan oleh program adalah setiap aksi yang kondisinya terjadi pada saat itu.

11 Instruksi Select Penggunaan select dapat dipelajari pada Program 8.3. : select a>b : printstring(”a lebih besar b”) a<b : printstring(”a lebih kecil b”) a=b : printstring(”a sama dengan b”) Endselect Program 8.3 akan mencetak suatu string, tergantung dari nilai variabel a dan variabel b. Terlihat jelas bahwa ada 3 kondisi yang mungkin terjadi, sehingga pasti akan dikerjakan salah satu dari 3 aksi yang sesuai. Dengan nilai a = 3 dan nilai b =7 maka kondisi yang terpenuhi adalah kondisi ke 2 ( a < b) sehingga aksi yang dikerjakan adalah mencetak kalimat ”a lebih kecil b”. Program 8.3

12 Formula Kondisi Beberapa operator umum yang bisa digunakan sebagai kondisi pada bahasa Pemrograman Pascal terlihat pada Tabel 8.1.

13 Tabel 8.1. Tabel Operator pada Pascal
Keterangan Contoh = sama dengan 7 + 5 = 13  true > lebih besar dari 7 > 5  true < lebih kecil dari 7 < 5  false >= lebih besar atau sama dengan 7 >= 5  true <= lebih kecil atau sama dengan 7 <= 5  false <> tidak sama dengan 7 <> 5  true not invers atau pengingkaran not (7>5)  false

14 Formula Kondisi Operasi matematika akan memberikan angka sebagai hasil proses. Berbeda denga kondisi, yang menjadi hasil dari proses. Analisa suatu kondisi adalah nilai true (benar) dan false (salah). Nilai true biasanya dinotasikan dengan angka 1 dan false dinotasikan dengan angka 0. Beberapa logika yang digunakan untuk kondisi adalah logika and, logika or dan logika not.

15 Formula Kondisi Lebih jelas mengenai setiap logika, dapat dilihat pada Tabel 8.2. Angka 1 merupakan nilai true dan angka 0 merupakan nilai false.

16 Tabel 8.2. Tabel Logika Kebenaran
A and B A or B Not A Not B 1

17 Formula Kondisi Perhatikan contoh pada Program 8.4 untuk memahami penggunaan logika kebenaran pada.

18 select (a+b = 10) and (a < 5): printstring(”a lebih besar 5”) (a+b = 10) and (b < 5): printstring(”b lebih kecil 5”) (a + b > 10) : printstring(”a + b lebih dari 10”) (a + b < 10) : printstring(”a + b kurang dari 10”) endselect 1 2 3 4 Program 8.4

19 Pada program 8.4, jika nilai a=3 dan nilai b=7,
Pada kondisi (1): (a + b = 10) bernilai true (a < 5) bernilai true (a+ b = 10) and (a < 5) true and true = true dengan nilai true pada kondisi (1) maka aksi pada kondisi (1) akan dikerjakan yaitu mencetak ”a lebih besar 5”. Pada kondisi (2): (b < 5) bernilai false (a+ b = 10) and (b < 5) true and false = false dengan nilai false pada kondisi (2) maka aksi pada kondisi (2) tidak akan dikerjakan.

20 Pada program 8.4, jika nilai a=3 dan nilai b=7,
Pada kondisi (3): (a + b > 10) bernilai false dengan nilai false pada kondisi (3) maka aksi pada kondisi (3) tidak akan dikerjakan. Pada kondisi (4): (a + b < 10) bernilai false dengan nilai false pada kondisi (4) maka aksi pada kondisi (4) tidak akan dikerjakan.

21 Instruksi Case…of Perintah lain yang memiliki cara kerja yang sama dengan select adalah perintah case of. Bentuk dasar dari perintah case of adalah: case (variabel) of nilai 1 : aksi 1 nilai 2 : aksi 2 nilai 3 : aksi 3 ... nilai n : aksi n endcase

22 Contoh Instruksi Case…of
case (angka)of 0 : printstring(”nol”); 1 : printstring(”satu”); 2 : printstring(”dua”); 3 : printstring(”tiga”); ... 9 : printstring(”sembilan”); Endcase Pada program 8.5 jika nilai dari variabel angka adalah 0 maka yang akan dikerjakan adalah perintah printstring(”nol”). Begitu juga dengan kondisi nilai yang lain pada variabel angka. Yang akan dikerjakan adalah aksi yang sesuai dari setiap kondisi yang benar. Program 8.5

23 Instruksi if ... then ... else Bentuk yang lain dari choice adalah dengan menggunakan perintah if ... then…else. Bentuk dasarnya adalah : if (kondisi) then aksi jika kondisi benar else aksi jika kondisi salah fi

24 Contoh Instruksi if ... then ... else
if (a > 0) then printstring(” a positif ”) else printstring(” a negatif ”) fi Program 8.6 akan mencetak keterangan apakah nilai variabel a adalah bilangan positif atau negatif. Saat (a > 0 ) bernilai true maka yang tercetak adalah ”a positif”. Jika kondisi tersebut tidak terpenuhi (a > 0 false) maka bagian else yang akan dikerjakan yaitu mencetak ”a negatif”. Program 8.6

25 Kekurangan dari Program 8. 6 adalah jika nilai a adalah 0
Kekurangan dari Program 8.6 adalah jika nilai a adalah 0. pada kasus ini, kondisi (a > 0) akan bernilai false sehingga yang dicetak adalah ”a negatif”, padahal untuk kondisi ini ada dua kasus yang harus diperhatikan, apakah benar a < 0 atau a = 0. Program 8.6 dapat disempurnakan menjadi Program 8.7. if (a > 0) then printstring(” a positif ”) else if ( a = 0 ) then printstring(” a nol ”) printstring(” a negatif ”) fi Program 8.7

26 Latihan Jika nilai >= 90  ps(“Cum Laude”)
Jika nilai >=85 dan <90  ps(“Sangat baik”) Jika nilai >= 65 dan < 85  ps(“lulus”) Jika nilai < 65  ps(“tidak lulus”) JAWAB : If nilai >= 90 then ps(“cum laude”); else if nilai >= 85 then ps(“Sangat baik”); else if nilai >= 65 then ps(“lulus”); else ps(“tidak lulus”);

27 Choice pada Bahasa Pascal
Bahasa Pascal menggunakan case-of dan if-then-else sebagai perintah untuk melakukan pilihan. Bentuk dasarnya adalah : if (kondisi) then begin aksi jika kondisi benar end else aksi jika kondisi salah begin dan end tidak perlu dituliskan jika aksi yang dikerjakan hanya 1 perintah.

28 Contoh Program 8.8 : (1) uses crt; (2) var x,sisa : integer; (3) BEGIN (4) readln(x); (5) sisa := x mod 2; (6) if (sisa=0) then (7) writeln(’bilangan genap’) (8) else (9) writeln(’bilangan ganjil’); (10) END.

29 Program 8.8 awalnya akan menerima input dari keyboard, dengan harapan yang diinputkan adalah angka, yang kemudian akan disimpan pada variabel x (baris 4). Baris (5) merupakan operasi pembagian x dengan 2. Yang disimpan pada variabel sisa adalah sisa pembagian. Misalnya 7 mod 2, hasilnya adalah 3 dan sisanya adalah 1. Baris (7) sampai baris (9) akan menuliskan salah satu dari 2 keterangan yang ada tergantung dari nilai variabel sisa. Jika variabel sisa bernilai 0 maka yang dicetak adalah ”bilangan genap”, selain itu (sisa <> 0) maka yang dicetak adalah ”bilangan ganjil”.

30 Dari program 8.8: Jika angka yang diinputkan adalah 20 apakah output-nya? Jika angka yang diinputkan adalah 17 apakah output-nya?

31 Latihan Perhatikan Perintah berikut ini:
If (nilai > 59) AND (bayar = “SUDAH”) then Status = “LULUS” Else if (nilai > 59) AND (bayar = “BELUM”) then Status = “LULUS BERSYARAT” Status = “TIDAK LULUS” Endif endif Jika mahasiswa A mendapat nilai 45 dan sudah membayar uang kuliah, apa status mahasiswa tersebut? Jika mahasiswa B mendapat nilai 25 dan belum membayar uang kuliah, apa status mahasiswa tersebut ? Jika mahasiswa C mendapat nilai 80 dan sudah membayar uang kuliah, apa status mahasiswa tersebut ?

32 Choice dalam Pascal Pilihan Biner (2 macam)
If <kondisi> then <aksi jika kondisi benar> else < aksi jika kondisi salah> Pilihan Banyak ( lebih dari 2 macam) Case <variabel> of <nilai alternatif 1> : <aksi alternatif 1> <nilai alternatif 2> : <aksi alternatif 2> : else < aksi alternatif lainnya> end; Repeat : Until <kondisi>

33 While <kondisi> do <aksi>
For i:= 1 to 5 do writeln(i); Ubah perintah for menjadi while ... Do i:=1; While i <=5 do begin writeln(i); i:=i+1; End; Ubah perintah for menjadi repeat ... Until i:=1; Repeat writeln(i); i:=i+1; Until (i <=5) ????????????????

34 Latihan : Jika pilihan = 1 tampilkan **** *** buat di prosedur segi3 ** * Jika pilihan = 2 tampilkan *** ***** buat di prosedur lingkaran ***** Jika pilihan = 3 tampilkan **** buat di prosedur segi4

35 -selesai-


Download ppt "MATERI 8 CHOICE / PILIHAN."

Presentasi serupa


Iklan oleh Google