04 Selection+Switch_Modul prak-Algo I Versi 5 Kelas A

  Praktikum : Algoritma dan Pemrograman I Modul Praktikum ke : 04 Judul Materi : Pemilihan II / Selection II

  Tujuan / Sasaran : Mahasiswa dapat membuat pseudecode dan flowchart serta mempraktekkan perintah selection/ pemilihan (Switch)

  Waktu (lama) : 3 Jam Aplikasi yang digunakan : C++

  …

I. SWITCH

  Statemen ini merupakan pernyataan yang dirancang untuk

  …

  menangani pengambilan keputusan ………. yang melibatkan sejumlah pilihan

  …

  alternatif yang diantaranya untuk ………. menggantikan pernyataan

  IF bertingkat ……….

  Perintah SWICTH memiliki bentuk umum sebagai berikut : -

  switch (ekspresi) { case konstanta1: pernyataan1; break; case konstanta2: pernyataan2; break; ................... ................... ………….. case konstanta_n: pernyataan_n; break; default: pernyataan_x;

  Dari bentuk umum diatas, dapat dijelaskan bahwa ekspresi dapat berupa ungkapan yang bernilai integer atau bertipe karakter. Setiap konstanta1, konstanta2 sampai konstanta_n dapat berupa konstanta integer atau konstanta karakter. Setiap pernyataan1, pernyataan2 sampai dengan pernyataan_x dapat berupa sebuah atau beberapa pernyataan.

  Perintah switch akan menyeleksi kondisi yang diberikan dan kemudian membandingkan hasilnya dengan konstanta-konstanta yang berada di case. Pembandingan akan dimulai dari konstanta 1 sampai dengan konstanta yang terakhir. Jika hasil dari kondisi sama dengan nilai konstanta tertentu, misalnya konstanta2, maka perintah-perintah yang ada di case konstanta2 akan diproses sampai ditemui perintah break yang akan membawa proses keluar dari penyeleksian switch. Jika semua konstanta-konstanta yang dibandingkan tidak ada yang sama, maka perintah-perintah yang berada di default yang akan diproses. Bentuk dari

  

default adalah optional dan jika tidak digunakan, maka tidak ada perintah-perintah di

  penyeleksian switch yang akan diproses jika pembandingan semua konstanta tidak ada yang sama. Dibawah ini contoh flowchart, algoritma dan program Pemilihan/Selection, Jika pengguna memasukkan 1, program menampilkan “Satu”; Jika pengguna memasukkan 2, program menampilkan “Dua”; Jika pengguna memasukkan 3, program menampilkan “Tiga”; Jika pengguna memasukkan 4, program menampilkan “Empat”; Jika pengguna memasukkan 5, program menampilkan “Lima”; Jika pengguna memasukkan 6, program menampilkan “Enam”, jika pengguna memasukkan 7, program menampilkan “Tujuh”,. Jika pengguna memasukkan nilai diluar jangkauan 1-7 program menampilkan “Angka tidak valid”

  Pseudocode Program Memasukkan Angka dari 1 s.d. 7 Kamus N : Integer

   Deskripsi input(N) switch(N) case 1: print(’SATU’) break case 2: print (’DUA’) break case 3: print (’TIGA’) break case 4: print (’EMPAT’) break case 5: print (’LIMA’) break case 6: print (’ENAM’) break case 7: print (’TUJUH’) break default print (’ANGKA TIDAK VALID’)

  Flowchart START N ‘SATU’ END N = 1 F T ‘DUA’ N = 2 T F N = 3 F ‘TIGA’ N = 4 T F ‘EMPAT’ T N = 5 F ‘LIMA’ T N = 6 F ‘ENAM’ T N = 7 ‘TUJUH’ T F ‘ANGKA TIDAK

  VALID’ Nama file : switch1.cpp}

II. Soal praktikum / latihan

  Buat Pseudocode, Algoritma, Flowchart dan Programnya

SWITCH TUNGGAL

  1. Berdasarkan soal nomer satu, Anda buat Tampilan dari Huruf ”A” sampai dengan ”Z”. Jika pengguna memasukkan nilai diluar jangkauan 1-26, program menampilkan “Huruf tidak valid” . (nama file : Prak4-01.cpp):

  2. Sebuah rumah makan “SHALERO”, membuat 4 buah menu yang terdiri dari : Menu 1 : Nasi Goreng dengan harga Rp. 5.000,- Menu 2 : Gado-gado dengan harga Rp. 3.500,- Menu 3 : Bubur Ayam dengan harga Rp. 2.500,- Menu 4 : Ayam Bakar Pedas dengan harga Rp. 7.500,- Bila memilih diluar dari 4 menu ini akan berkomentar “Pilihan Anda Salah”

  (nama file : Prak4-02.cpp)

  3. Jika pengguna memasukkan 0, program menampilkan “Minggu”; Jika pengguna memasukkan 1, program menampilkan “Senin”; Jika pengguna memasukkan 2, program menampilkan “Selasa”; Jika pengguna memasukkan 3, program menampilkan “Rabu”; Jika pengguna memasukkan 4, program menampilkan “Kamis”; Jika pengguna memasukkan 5, program menampilkan “Jum’at” dan jika pengguna memasukkan 6, program menampilkan “Sabtu”. Jika pengguna memasukkan nilai diluar jangkauan 0-6, program menampilkan “Hari tidak valid” (nama file : Prak4-03.cpp)

  4. Mencetak apabila Nilai (nama file : Prak4-04.cpp) Nilai A = “Sangat baik “ Niali B = “Baik” Nilai C = “cukup” Nilai D = “ Kurang” Nilai E = “ Gagal”

  5. Buatlah program untuk untuk memilih hari dimana (1 = “senin”, 2 = “selasa”, 3 = “rabu”, 4 = “kamis”, 5 = “jum’at”, 6 = “sabtu”, 7 = “minggu”) selain memilih itu maka akan menampilkan “data tidak tersedia” (nama file : Prak4-05.cpp)

  6. Sebuah rumah makan akan membuat program memilih menu makanan dimana (menu1 = rending (10000), menu2 = ayam (12000), dan menu3 = seafood(50000)), jika memilih salah satu dari menu tersebut maka akan muncul jumlah yang harus dibayar (jumlah*harga), dengan jumlah yang harus di input. (nama file : Prak4-06.cpp)

  7. Jika memasukan (1 = “merah”, 2=”kuning”, 3=”hijau” dan 4 = “biru”). (nama file : Prak4-07.cpp)

  8. Terdapat 3 menu yaitu menghitung luas persigi panjang, menghitung keliling persegi panjang dan menu yang terakhir keluar (nama file : Prak4-08.cpp)

  9. Sebuah perusahaan akan menghitung gaji para pegawai nya dimana terbagi 3 golongan, setiap karyawan dibayar perjamnya adalah (golongan 1 = 50000, golongan2 = 25000 dan golongan3 = 10000), hitunglah gaji yang didapat perbulannya sesuai golongan yang dipilih dalam program (nama file : Prak4- 09.cpp)

  10. Konversi nilai (1 = A, 2 = B, 3 = C, 4 = D, 5 = E) (nama file : Prak4-10.cpp)

  11. Konversi nilai (A = 1, B = 2, C =3, D=4, E = 5, F =6, G= 7, H = 8, I = 9, J= 10) (nama file : Prak4-11.cpp)

  12. Sebuah supermarket akan menghitung bonus, dimana terdapat bonus 1, bonus2, dan bonus 3, jika memilih bonus 1 maka akan mendapatkan diskon 10%, jika memilih bonus 2 akan mendapatkan 20% dan jika memilih bonus 3 akan mendapatkan diskon 30%, dengan menginput total belanja, hitunglah total yang harus dibayar setelah mendapatkan diskon. (nama file : Prak4-12.cpp)

  13. Menghitung rumus dimana terdapat 3 rumus jika memilih rumus 1, maka akan menghitung ((y*5)+(y-2)), jika memilih rumus 2 akan menghitung ((y/2)+4) dan

  4

  jika memilih rumus 3 maka akan menghitung , dimana variable x harus di − input (nama file : Prak4-13.cpp)

  14. Menghitung rumus dimana terdapat 3 rumus, jika memilih rumus pertama maka akan menghitung + 6 , jika memilih rumus kedua maka akan menghitung √

  √

  , dan jika memilih rumus ketiga akan menghitung (nama file : Prak4- 14.cpp)

  15. Buatlah program untuk menampikan pilihan rumus rangkaian Seri dan Pararel jika memilih pilihan S atau Seri maka menampilkan perhitungan seperti ini : (nama file : Prak4-15.cpp) Jika memilih pilihan P atau Pararel maka menampilkan perhitungan seperti ini :

SWITCH BERSARANG

  16. Menu untuk menghitung , dengan pilihan sebagai berikut : (nama file : Prak4-16.cpp)

  1. Luas Segiempat

  2. Luas Segitiga

  3. Luas dan keliling Lingkaran

  4. Keluar Program Dat a masukan dibaca dari masing-masing submenu. Cetak elemen masukkan dan hasil keluaran masing–masing pilihan. Bila salah memilih menu , beri komentar “Data Anda Salah”

  17. Penggabungan resistor. Menghitung resistor pengganti dari 3 buah resistor yang disusun secara seri atau paralel. Rumus untuk resistor pengganti sebagai berikut: (nama file : Prak4-17.cpp)

  Seri: Rgab = R1 + R2 + R3 Paralel: 1/Rgab = 1/R1 + 1/R2 + 1/R3

  2. Keliling Segiempat

  3. Exit – Kembali Ke Menu Utama

  Besar R1, R2 dan R3 serta jenis penyusunan (seri/paralel) diinput oleh user.

  18. Pembelian yang mencapai nilai tertentu akan mendapatkan suatu potongan pembelian yang besarnya sesuai tabel berikut : (nama file : Prak4-18.cpp) Total Pembelian (Rp) Potongan(Rp) 0 – 1000 100 1001 – 10.000 500 10.001 – 30.000 2.000

  > 30.000 4.000 Hitung besarnya potongan dan nilai yang harus dibayar untuk masing-masing

  19. Untuk menyelesaikan masalah berikut : Dimana program akan menerima masukan berupa kode, jenis dan harga, dengan jenis adalah "A", "B", dan "C".

  Untuk setiap jenis, masing-masing akan diberikan diskon sebesar 10% untuk A,15% untuk B, dan 20% untuk C, Jika buka ketiganya maka mencetak “diskon tidak dihitung”. Program akan menghitung berapa harga setelah didiskon. (nama file : Prak4-19.cpp) Contoh masukan : Jenis = B kode = 10 harga = 10000 Contoh keluaran : Jenis barang B mendapat diskon = 15%, Harga setelah didiskon = 8500

  20. Menu Utama untuk menghitung , dengan pilihan sebagai berikut : (nama file : Prak4- 20.cpp)

  A. Segiempat

  1. Luas Segiempat

  C. Keluar Program

  3. Exit – Kembali Ke Menu Utama

  B. Segitiga

  1. Luas Segitiga

  2. Keliling Segitiga

III. Referensi

  • Munir, Rinaldi, Algoritma & Pemrograman 1 & 2, Penerbit Informatika, Jakarta, 2003
  • Brookshear, Glenn, Computer Science, Penerbit Erlangga, Jakarta, 2004
  • Suryadi, Pengantar Algortima dan Pemrograman - Yatini B, Indra, Pemrograman Terstruktur, J&J Learning Yogyakarta, 2001
  • Limanto, Susana, Algoritma dan pemrograman, Dinastindo Jakarta, 2002
  • - Paul Tremblay, Jean, An Introduction to Computer Science an algorithmic

  Media, 2009

  Approach, McGraw-Hill, 1981

  • Wirth, Niklaus, Algorithmic + Data Structures = Programs, Prentice-Hall, 1976
  • Jogiyanto H.M, Kosep Dasar Pemrograman Bahasa C, Andi Offset Yogyakarta, 1993
  • - Munir, Rinaldi, Algoritma dan Pemrograman Dalam Bahasa Pascal dan C, Informatika

    Bandung, 2001
  • Pranata, Antony, Algoritma dan Pemprograman, J&J Learning Yogyakarta, 2000
  • Andri Kristanto, Algoritma dan Pemrograman dengan C++, Graha Ilmu,
  • Thompson Susabda Ngoen , Algoritma dan Struktur Data Bahasa C, Mitra Wacana