Algoritma dan Pemrograman Oleh: Eddy Prasetyo N
27/02/2014
1
Konten
Pengantar Analisa Kasus Logika IF – Then Logika Depend On Notasi Algoritmanya Latihan Analisa Kasus
27/02/2014
2
Pokok Bahasan
Analisa Kasus
27/02/2014
Depend on If … then
3
Pengantar
[1]
Dalam menyelesaikan suatu permasalahan di dunia nyata sering kali kita berhadapan dengan kondisi percabangan / harus melakukan pengambilan keputusan sesuai dengan kondisi / keadaan
27/02/2014
4
Pengantar
[2]
Kondisi percabangan juga dapat terjadi ketika kita merumuskan suatu algoritma dalam menyelesaikan masalah Lalu bagaimana notasi algoritmik yang dapat digunakan untuk memecahkan masalah percabangan (kasus)???
27/02/2014
5
Analisa Kasus
[2]
Secara umum apabila kita berhadapan dengan suatu permasalahan / kasus maka pertama-tama kita akan melakukan proses analisa Demikian juga ketika kita berhadapan dengan masalah percabangan (kasus)
27/02/2014
6
Analisa Kasus
[3]
Analisa Kasus merupakan salah satu konstruksi terpenting dalam algoritma yang memungkinkan kita untuk melakukan eksekusi yang berbeda-beda sesuai dengan kondisi yang dihadapi (kasus)
27/02/2014
7
Analisa Kasus
Ada 2 bagian penting yang perlu kita definisikan dalam Analisa Kasus, yaitu
[4]
Kondisi => suatu ekspresi yang menghasilkan/memiliki nilai boolean [true,false] Aksi yang akan dilakukan dalam suatu kondisi
Antara kondisi dan aksi terdapat suatu hubungan berpasangan
27/02/2014
8
Analisa Kasus
[5]
Konstruksi dari Analisa Kasus dapat dimulai dengan menentukan semua kondisi yang mungkin (melakukan partisi domain) atau menentukan variasi aksi
27/02/2014
9
Kasus 1: Input Mata Kuliah
Dalam melakukan input mata kuliah pada saat registrasi ada beberapa kondisi yang akan mempengaruhi aksi yang akan dilakukan oleh mahasiswa. Coba definisikan kemungkinan kondisi yang ada ! Coba definisikan kemungkinan aksi yang dapat dilakukan!
27/02/2014
10
Analisa Kasus [6]
Secara umum ada beberapa notasi algoritmik yang digunakan dalam membangun analisa kasus, yaitu :
27/02/2014
Depend on => biasanya digunakan untuk analisa kasus dengan kasus banyak (kemungkinan kondisi banyak) If … then => biasanya digunakan untuk analisa kasus dengan satu atau dua kasus yang komplementer 11
Depend On [1]
27/02/2014
12
Depend On [2]
Syarat dari depend on :
27/02/2014
13
Kasus 2 : Maksimum 2 Harga
Pernyataan :
Dibaca dua buah harga a dan b. Tuliskan harga yang lebih besar.
Analisa :
Ada 3 kemungkinan kondisi:
a
b a=b
aksi menampilkan b aksi menampilkan a aksi menampilkan “kedua bilangan sama”
27/02/2014
14
Kasus 2 : Maksimum 2 Harga
Notasi Algoritmik dari kasus 2
27/02/2014
15
Kasus 3 : Even or Odd
Misalkan kita diberikan sebuah harga a integer bagaimana cara kita menentukan bahwa a itu bilangan genap atau ganjil? Tuliskan „genap‟ bila a merupakan bilangan genap dan „ganjil‟ bila a merupakan bilangan ganjil
27/02/2014
16
Kasus 3 : Even or Odd
Notasi Algoritmik dari kasus 3
27/02/2014
17
Latihan Depend On
1.Coba tuliskan Notasi Algoritmik dari kasus WUJUD CAIR
27/02/2014
18
Jawaban Latihan Depend On
Notasi Algortimik dari Latihan 1
27/02/2014
19
Latihan Depend On
2.Coba tuliskan Notasi Algoritmik dari kasus RANKING
27/02/2014
20
Jawaban Latihan Depend On
Notasi Algortimik dari Latihan 2
27/02/2014
21
IF … THEN … [1]
Notasi algoritmik if … then biasanya digunakan untuk analisa kasus untuk jumlah kasus satu atau dua yang komplementer
27/02/2014
22
else secara berisikan kondisi yang merupakan negasi dari kondisi pada if
Karena else berisi negasi kondisi secara implisit maka untuk analisa kasus dengan 2 kemungkinan kondisi maka kita tidak perlu menuliskan kondisinya lagi
27/02/2014
23
Coba kita selesaikan kasus Even or Odd dengan menggunakan if .. then
27/02/2014
24
Coba bandingkan, apa perbedaannya?
27/02/2014
25
Kasus 4: Indeks Nilai
Buatlah algortima untuk menentukan indeks nilai mata kuliah X dengan aturan:
27/02/2014
Indeks A , nilai>80 Indeks B , 60<= nilai <=80 Indeks C , 50<= nilai <60 Indeks D , 40<=nilai <50 Indeks E , nilai<40
26
27/02/2014
27
Depend On dalam Java Switch (nama_var){ case nilai1 : aksi_1; break; case nilai2 : aksi_2; break; ... case nilai_n: aksi_n;break; default: aksi_default;break; }
27/02/2014
28
Contoh depend On dalam JAVA class DependOn{ public static void main(String[] args){ int hari=5; switch(hari){ case 1: system.out.println("hari 1");break; case 2: system.out.println("hari 2");break; case 3: system.out.println("hari 3");break; default: system.out.println("tidak ada hari ke:"+hari);break; } } } 27/02/2014
29
IF..THEN (Dalam JAVA) Format: 1. Satu Kondisi if(kondisi){ //aksi }
2. Dua Kondisi if(kondisi){ //aksi1 } else{ //aksi2 } 27/02/2014
30
Contoh IF..Then dalam JAVA class If2{ public static void main(String[] args){ boolean ketemu=false; if (ketemu=true){ system.out.println(“ketemu aksi1“+ketemu); } else { system.out.println("hketemu aksi2” +ketemu"); } } }
27/02/2014
31
Contoh JAVA IF banyak kondisi class DependOn{ public static void main(String[] args){ int hari=5; if (ketemu==1){ system.out.println("hari 1"); } else if (ketemu==2){ system.out.println("hari 2"); } else if (ketemu==3){ system.out.println("hari 3"); } else { system.out.println("tidak ada hari ke:"+hari); } }} 27/02/2014
32
Latihan Analisa Kasus
1. Bonus Pegawai
27/02/2014
33
Latihan Analisa Kasus
2. Gaji Karyawan
27/02/2014
34
Latihan Analisa Kasus
3. Akar Persamaan Kuadrat
4. Jumlah hari dalam bulan
27/02/2014
35