Academia.eduAcademia.edu

Modul Praktikum – Pemrograman Dasar

Modul Praktikum – Pemrograman Dasar BAB 2 Seleksi Kondisi Tujuan 1. Praktikan mampu memahami konsep penggunaan conditional assignment 2. Praktikan mampu memahami konsep percabangan menggunakan if-else, if-else if-else 3. Praktikan mampu memahami konsep percabangan menggunakan Ringkasan Materi A. Conditional Assignment Sebelum mengenal menggunakan if kita dikenalkan bagaimana cara menggunakan dan kode untuk conditional assignment. Berikut kode dari conditional assignment : type_data variabel = kondisi ? pernyataan_benar : pernyataan_salah Dari kode diatas dapat dijelaskan bahwa pertama harus dilakukan pendeklarasian variabel dan type data dari variabel yang kita buat, kemudian kita beri suatu kondisi setelah itu jika kondisi benar maka program akan berjalan ke pernyaataan benar namun jika salah maka akan melakukan pernytaan salah. Contoh : String s = (5>2) ? “Berhasil” : “Gagal”; Jika program tersebut dijalankan maka akan mencetak “Berhasil karena” kondisi pada conditional assignment tersebut benar. B. Seleksi kondisi menggunakan if-else Untuk melakukan percabangan tunggal kita dapat menggunakan if saja namun untuk percabangan yang lebih dari satu (percabangan majemuk) maka kita dapat menggunakan ifelse. Bentuk dasar dari statemen ini adalah : if (kondisi){ Blok pernyataan; } else{ Blok pernyataan } Namun untuk percabangan yang lebih dari 2, bentuk dasar yang digunakan adalah : if (kondisi){ Blok pernytaan 1; } else if (kondisi){ Blok pernyataan 2; } else if (kondisi){ Blok pernyataan 3; } else{ Blok pernyataan 4; } C. Nested If Suatu if memungkinkan untuk terapat if didalan if inilah yang disebut sebagai nested if. Alur programnya adalah jika kondisi if pertama benar makan program akan mengecek if kedua jika benar maka mengecek if ketiga begitu seterusnya. Bentuk dasar dari nested if adalah sebagai berikut : Modul Praktikum – Pemrograman Dasar if (kondisi){ if(kondisi){ if(kondisi){ blok pernyataan; } Else{ Blok pernyataan; } } Else{ Blok pernyataan; } } Else{ Blok pernyataan; } D. Switch Case Selain menggunakan if untuk seleksi kondisi terdapat sintaks lain yaitu menggunakan Switch case. Program akan menampilkan output sesuai dengan inputan yang diberikan dengan batasan input berupa nilai awal sampai nilai akhir tertentu. Bentuk dasar dari switch case adalah sebagai berikut : Switch(kondisi){ Case nilai1 : statemen-1; break; Case nilai2 : statemen-2; break; Case nilai3 : statemen-3; break; Default : Statemen-4; } Pelaksanaan Percobaan A. Conditional Assignment constAss.java 1 public class constAss{ 2 public static void main(String[] args){ 3 String s = "filkom"; 4 String val = (s=="filkom")?"Brawijaya" : "null"; 5 System.out.println(s+" "+val); 6 } 7 } B. If-else seleksi1.java 1 import java.util.Scanner; public class seleksi1{ 2 public static void main(String[] args){ 3 Scanner in = new Scanner(System.in); 4 System.out.print("masukkan nilai : "); 5 int nilai = in.nextInt(); 6 if (nilai > 60) 7 System.out.println("Anda lulus"); 8 else if (nilai >= 40) 9 System.out.println("Anda harus mengulang !"); 10 else{ 11 System.out.println("Anda gagal"); 12 } 13 Modul Praktikum – Pemrograman Dasar 14 15 } } C. Nested if seleksi2.java 1 import java.util.Scanner; 2 public class seleksi2{ 3 public static void main(String[] args){ 4 Scanner in = new Scanner(System.in); 5 System.out.print("masukkan nilai : "); int nilai = in.nextInt(); 6 if(nilai * 2 < 50){ 7 nilai += 10; 8 } 9 if(nilai<=20){ 10 System.out.println("Filkom"); 11 if(nilai % 2 == 1){ 12 System.out.println("UB"); 13 } 14 else{ 15 System.out.println("Brawijaya"); 16 } 17 } 18 else{ 19 System.out.println("PTIIK"); 20 if(nilai % 2 == 1){ 21 System.out.println("UB"); 22 } 23 else{ 24 System.out.println("Brawijaya"); 25 } 26 } 27 } 28 29 } D. Switch-case seleksi3.java 1 import java.util.Scanner; public class seleksi3{ 2 public static void main(String[] args){ 3 Scanner in = new Scanner(System.in); 4 int uang; 5 System.out.println("Tipe Mata uang yang tersedia"); 6 System.out.println("1. Dolar - USA (kurs USD 1 = Rp 7 8000,-)"); System.out.println("2. Yen - Jepang( kurs JPY 1 = Rp. 8 4000,- )"); System.out.println("3. Poundsterling - Inggris( kurs 1 9 Poundsterling = Rp. 10.500, -)"); System.out.println("4. Euro - MEE( kurs EUR 1 = Rp. 10 8900,- )"); System.out.println("5. Riyal - Arab Saudi( kurs 1 Riyal = 11 Rp. 1100,-)"); Modul Praktikum – Pemrograman Dasar 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 System.out.print("Masukkan jenis mata uang anda : "); int pilihan = in.nextInt(); switch(pilihan){ case 1 : System.out.println("Data diterima, jenis valuta Anda : Dolar Amerika Serikat"); System.out.print("Masukkan banyak uang anda (dalam dolar) : "); uang = in.nextInt(); System.out.println("Uang yang diterima : Rp "+(uang*8000)+",-");break; case 2 : System.out.println("Data diterima, jenis valuta Anda : Yen Jepang"); System.out.print("Masukkan banyak uang anda (dalam Yen) : "); uang = in.nextInt(); System.out.println("Uang yang diterima : Rp "+(uang*4000)+",-");break; case 3 : System.out.println("Data diterima, jenis valuta Anda : Poundsterling Inggris"); System.out.print("Masukkan banyak uang anda (dalam dolar) : "); uang = in.nextInt(); System.out.println("Uang yang diterima : Rp "+(uang*10500)+",-");break; case 4 : System.out.println("Data diterima, jenis valuta Anda : Euro MEE"); System.out.print("Masukkan banyak uang anda (dalam Euro) : "); uang = in.nextInt(); System.out.println("Uang yang diterima : Rp "+(uang*8900)+",-");break; case 5 : System.out.println("Data diterima, jenis valuta Anda : Riyal Arab Saudi"); System.out.print("Masukkan banyak uang anda (dalam Riyal) : "); uang = in.nextInt(); System.out.println("Uang yang diterima : Rp "+(uang*1100)+",-");break; default : System.out.println("data tak ditemukan"); } } } Data dan Analisis hasil percobaan A. Conditional Assignment 1. Jalankan file constAss.java dan benahi jika menemukan kesalahan! ............................................................................................................................................. ............................................................................................................................................. 2. Ubah kode diatas pada baris ke empat dengan merubah type data String menjadi int, amati yang terjadi kemudian jelaskan! ............................................................................................................................................. ............................................................................................................................................. Modul Praktikum – Pemrograman Dasar 3. Tambahkan kode dibawah baris 5 dengan menambahkan program yang meminta inputan user dengan memasukkan nama dan nim masing-masing mahasiswa dan jika benar maka akan mencetak nama dan nim mahasiswa, jika salah maka mencetak “input nama salah” jika memasukkan nama yang salah, “input nim salah” jika memasukka nim yang salah ............................................................................................................................................. ............................................................................................................................................. 4. Buat program yang meminta untuk memasukkan nama dan password kemudian program akan meminta user untuk memasukkan nama dan password sesuai inputan sebelumnya. Jika benar maka program akan mencetak informasi biodata mahasiswa dan jika salah maka program akan mencetak “data tak ditemukan”. ............................................................................................................................................. ............................................................................................................................................. B. If else 1. Jalankan file seleksi1.java dan benahi jika menemukan kesalahan! ............................................................................................................................................. ............................................................................................................................................. 2. Masukkan nilai 30, 60 dan 80 saat program dijalankan, dan jawablah dengan screenshot hasil keluaran dari program! ............................................................................................................................................. ............................................................................................................................................. 3. Pada baris 9, ubahlah kode program menjadi System.out.println("Nilai kurang !");, Pengaruh apa yang ditimbulkan setelah dilakukan pengubahan kode diatas! ............................................................................................................................................. ............................................................................................................................................. C. Nested If 1. Jalankan file seleksi2.java dan benahi jika menemukan kesalahan! ............................................................................................................................................. ............................................................................................................................................. 2. Masukkan nilai 5, 20, 30 saat program dijalankan, jelaskan alur jalan program dan beri screenshot keluaran dari program! ............................................................................................................................................. ............................................................................................................................................. 3. Ubah kode diatas dengan memanfaatkan operasi and! ............................................................................................................................................. ............................................................................................................................................. D. Switch case 1. Jalankan file seleksi3.java dan benahi jika menemukan kesalahan! ............................................................................................................................................. ............................................................................................................................................. 2. Pada baris 18,22,26,30 dan 34 hapus kode break, pengaruh apa yang terjadi setelah pengubahan kode tersebut! Modul Praktikum – Pemrograman Dasar ............................................................................................................................................. ............................................................................................................................................. 3. Apa perbedaan seleksi kondisi dengan menggunakan switch case dan if-else, dan kapan kita harus menggunakan if-else dan kapan menggunakan switch case? ............................................................................................................................................. ............................................................................................................................................. Tugas Praktikum 1. Buatlah program sebagai berikut dengan menggunakan metode switch case Menu : 1. menghitung luas dan keliling persegi panjang 2. menghitung luas dan keliling lingkaran 3. menghitung luas dan keliling segitiga Pilihan anda : 3 Masukkan a : 3 Masukkan b : 4 Masukkan r : 5 Keliling segitiga Luas segitiga : 12 cm : 6 cm2 Pilihan anda : 10 Data tak ditemukan, program dihentikan ... 2. Untuk menentukan kriteria kegemukan, digunakan IMT (Indeks Massa Tubuh), yang bisa dihitung menggunakan rumus : IMT = b / t2 b = berat badan (kg) t = tinggi badan (m) Kriteria untuk nilai IMT ditabelkan sebagai berikut : Nilai IMT Kriteria IMT ≤ 18,5 Kurus 18,5 < IMT ≤ 25 Normal 25 < IMT ≤ 30 Gemuk IMT > 30 Kegemukan Susun program dengan tampilan sebagai berikut dengan menggunakan metode if-else! Berat badan (kg) Tinggi badan (m) IMT = 15,21 : 45 :1.72 Berat badan (kg) Tinggi badan (m) IMT = 27,76 : 85 :1.71 Termasuk kurus Termasuk gemuk 3. Susun program untuk masalah pengajian sebagai berikut : Modul Praktikum – Pemrograman Dasar Masukan yang dibutuhkan oleh program adalah : jumlah jam kerja tiap minggu.Keluaran program adalah : total upah dari pegawai tertentu. Aturan yang diterapkan adalah : - Batas kerja maksimal adalah 60 jam / minggu, dengan upah Rp. 5000,- / jam. Kelebihan jam kerja dari batas maksimum akan dianggap sebagai lembur dengan upah Rp. 6000,- / jam. - Batas kerja minimal adalah 50 jam / minggu. Apabila pegawai mempunyai jam kerja di bawah batas kerja minimal ini, maka akan dikenakan denda sebesar Rp. 1000, - / jam. Contoh tampilan : Jam kerja : 55 Upah = Rp. 275000 Lembur = Rp. 0 Denda = Rp. 0 --------------------Total = Rp. 275000 Jam kerja : 70 Upah = Rp. 300000 Lembur = Rp. 60000 Denda = Rp. 0 --------------------Total = Rp. 360000 Jam kerja : 40 Upah = Rp. 200000 Lembur = Rp. 0 Denda = Rp. 10000 --------------------Total = Rp. 190000