1 / 20

PERTEMUAN 5 Algoritma & Pemrograman

PERTEMUAN 5 Algoritma & Pemrograman. Presented by : Sity Aisyah, M.Kom Email : dryesha@gmail.com Blog : yeshasalsabila.blogspot.com. 1. SELEKSI DENGAN KONDISI MAJEMUK.

turner
Download Presentation

PERTEMUAN 5 Algoritma & Pemrograman

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. PERTEMUAN 5Algoritma & Pemrograman Presented by : Sity Aisyah, M.Kom Email : dryesha@gmail.com Blog : yeshasalsabila.blogspot.com 1

  2. SELEKSI DENGAN KONDISI MAJEMUK Seringkali suatu kondisi yang dijadikan sebagai pengambil keputusan dalam suatu seleksi tidak sesederhana pada contoh if sebelumnya,melainkan melibatkan lebih dari sebuah kondisi. Studi Kasus 1 : [MemvaLidasi Nilai Ujian] Buatlah algoritma dan program yang meminta sebuah nilai ujian dimasukkan dari keyboard dan memvalidasi nilai tersebut. Berikan komentar ”Absah” jika nilai tersebut berada antara 0 sampai dengan 100 dan berikan komentar ”Tidak Absah” untuk keadaan sebaliknya. 2

  3. Jawaban :. 3

  4. 4

  5. Studi Kasus 2 : [Menentukan huruf kapital atau bukan] Buatlah algoritma dan program yang meminta sebuah karakter dimasukkan dari keyboard dan kemudian memberikan keterangan karakter tersebut termasuk huruf kapital atau bukan. 5

  6. Jawaban :. 6

  7. FUNGSI GETCH() DAN GETCHE() Getch Getch kepanjangan dari get character. Digunakan untuk membaca sebuah karakter tanpa di akhiri ENTER. Bentuk umumnya adalah sebagai berikut : Karakter = getch (); Getch membaca karakter tunggal yang dimasukan lewat keyboard tetapi hasilnya tidak di tampilkan melalui layar. Contoh program : #include <stdio.h> #include <conio.h> main() { char a; printf("Tekan sebuah tombol pada keyboard!"); a=getch(); printf("\nTombol yang baru anda tekan adalah %c",a); getch(); } 7

  8. Output : pada syntax a=getch(); artinya apapun yang ditekan pada keyboard akan disimpan ke dalam variabel a. salah satu kegunaan fungsi getch() ini adalah untuk masking password. Getche Getche kepanjangan dari get character and echo. Digunakan untuk membaca sebuah karakter tanpa di akhiri ENTER. Bentuk umumnya adalah sebagai berikut : Karakter = getche (); Getche membaca karakter tunggal yang di masukan lewat keyboard dan hasilnya akan di tampilkan pada layar. 8

  9. Lalu apa perbedaan fungsi getch() dan getche()? Seperti yang dijelaskan tadi getch() merupakan kepanjangan dari Get Character, sedangkan untuk getche() merupakan kepanjangan dari Get Character And Echo. Pada fungsi getch() tombol yang kita tekan pada keyboard tidak akan ditampilkan pada console (kecuali kita panggil variabelnya dengan fungsi printf atau fungsi output lainnya), namun untuk getche() tombol yang kita tekan akan langsung ditampilkan pada console. Contoh : #include <stdio.h> #include <conio.h> main() { char a; printf("Tekan sebuah tombol pada keyboard!"); a=getche(); printf("\nTombol yang baru anda tekan adalah %c",a); getch(); } 9

  10. Output : 10

  11. SELEKSI BERSARANG (NESTED IF) Masalah dengan tiga kasus atau lebih dapat dianalisis dengan struktur pemilihan bersarang. Perintah IF dalam IF sering disebut nested-if. Perintah ini mempunyai bentuk umum sebagai berikut : If (kondisi1) If(kondisi2) Pernyataan1; Else Pernyataan2; Else Pernyataan3; Pernyataan If dalam if juga mempunyai bentuk yang majemuk yang sering disebut if bertingkat. Bentuk umumnya adalah sebagai berikut : If (kondisi1) Pernyataan1; Else if (kondisi2) Pernyataan2; Else if (kondisi3) Pernyataan3; … … ... else pernyataan-n; 11

  12. Studi Kasus 1 : [Menentukan_bilangan_positif_negatif_nol] {Menentukan apakah suatu bilangan bulat yang diperoleh dari piranti masukan merupakan bilangan positif, negatif atau nol}. DEKLARASI: bil : integer DEFINISI: read(bil) if (bil = 0) then write(‘bilangan nol’) else if (bil < 0) then write(‘bilangan negatif’) else write(‘bilangan positif’) endif endif End Algoritma Buatlah program C nya ? 12

  13. Studi Kasus 2 : [Menentukan wujud air] {Menentukan wujud air : padat, cair, atau gas berdasarkan suhunya} DEKLARASI: T : real DEFINISI: read(T) if (T ≤ 0) then write(‘padat’) else if (T > 0) and (T < 100) then write(‘cair’) else if (T ≥ 100) then write(‘gas atau uap’) endif endif endif End Algoritma Buatlah program C nya ? 13

  14. Studi Kasus 3 : [Menghitung Indeks Nilai] {Menghitung indeks nilai mahasiswa berdasarkan nilai ujian yang diperoleh} DEKLARASI: Nilai : real indeks : char DEFINISI: read(Nilai) if (Nilai ≥ 80) then indeks ← ‘A’ else if (Nilai ≥70) and (Nilai < 80) then indeks ←‘B’ else if (Nilai ≥55) and (Nilai < 70) then indeks ←‘C’ else 14

  15. if (Nilai ≥ 40) and (Nilai < 55) then indeks ← ‘D’ else indeks ← ‘E’ endif endif endif endif write(indeks) End Algoritma Output : Buatlah program C nya ? 15

  16. SELEKSI CASE Jika suatu masalah yang memiliki dua kasus atau lebih, maka untuk menyederhanakan penulisan struktur pemilihan bersarang (nested if) digunakan struktur case-of. Bentuk strukturnya adalah : • ekspresi merupakan sembarang ekspresi (aritmatika atau boolean) yang menghasilkan suatu nilai (konstanta). • Case akan memeriksa apakah nilai dari ekpresi tersebut sama dengan salah satu nilai dari nilai-1, nilai-2 dan seterusnya. case ekspresi nilai-1 : pernyataan-1 nilai-2 : pernyataan-2 . . nilai-n : pernyataan-n otherwise : pernyataan-otherwise endcase Jika nilai ekspresi sama dengan nilai-1, maka pernyataan-1 akan dijalankan, dan seterusnya. Jika nilai ekspresi tidak sama dengan seluruh nilai (nilai-1, nilai-2, . . , nilai-n), maka pernyataan-otherwise yang akan dijalankan. 16

  17. Pernyataan CASE digunakan untuk menyederhanakan konstruksi IF..THEN..ELSE…yang terlalu banyak. • Pada masalah tertentu, CASE lebih memberikan kejelasan daripada IF. Namun perlu diketahui bahwa semua persoalan dapat ditangani oleh CASE bisa ditangani oleh IF, tetapi tidak sebaliknya. Daftar case-label dapat berupa sebuah konstanta, atau range dari konstanta yang bukan bertipe real. Contoh: 1 : (nilai integer 1) 1,2,3,4 : (nilai integer 1,2,3,4) 1..5 : (nilai integer 1,2,3,4,5) ‘A’ : (nilai karakter A) ‘A’,’B’ : (nilai karakter A dan B) ‘A’..’D’ : (nilai karakter A,B,C,D) ‘*’ : (nilai karakter *) 17

  18. Berikut contoh algoritma dengan struktur case. Studi Kasus 1 : [Mengkonversi_nama_bulan] {Menentukan nama bulan sesuai dengan nomor bulan} Algoritma : DEKLARASI: Nomor_bulan : integer DEFINISI: read(Nomor_bulan) case Nomor_bulan 1 : write(‘Januari’) 2 : write(‘Februari’) 3 : write(‘Maret’) 4 : write(‘April’) 5 : write(‘Mei’) 6 : write(‘Juni’) 7 : write(‘Juli’) 8 : write(‘Agustus’) 9 : write(‘September’) 10 : write(‘Oktober’) 11 : write(‘November’) 12 : write(‘Desember’) otherwise : write(‘Nomor bulan salah’) Endcase End Algoritma 18

  19. Studi Kasus 1 : [Kalkulator_sederhana] {Mensimulasikan kalkulator sederhana, yaitu menghitung hasil operasi aritmatika dari masukan berupa operand1, operand2, dan operator} Algoritma : DEKLARASI: op1, op2 : integer oprtor : char DEFINISI: read(op1, op2, oprtor) case oprtor ‘+’ : write(op1 + op2) ‘-’ : write(op1 – op2) ‘*’ : write(op1 * op2) ‘/’ : if (op2 ≠ 0) then write(op1 / op2) else write(‘Eror!’) endif Endcase End Algoritma 19

  20. Thank You 20

More Related