Praktikum : Algoritma dan Pemrograman I
Modul Praktikum ke : 02
Judul Materi : Pemilihan I / Selection I
Tujuan / Sasaran : Mahasiswa dapat membuat pseudocode, algoritma
dan flowchart serta mempraktekkan perintah
selection/ pemilihan (If ; If … Else)
Waktu (lama) : 3 Jam
Aplikasi yang digunakan : C++
I. Selection (Pemilihan)
Statemen ini digunakan untuk memilih bagian program yang akan dikerjakan sesuai
dengan kondisi yang diberikan. Macam-macam statemen pencabangan :
- If … …
- Perintah IF memiliki bentuk umum sebagai berikut :
if (kondisi) pernyataan
Bentuk diatas mempunyai arti jika kondisi bernilai benar maka pernyataan
dibawahnya akan dikerjakan. Jadi perintah IF merupakan perintah yang menentukan
pengambilan keputusan bahwa pernyataan itu akan dikerjakan atau tidak
Dibawah ini contoh flowchart, algoritma dan program Pemilihan/Selection, apabila
bilangan N habis dibagi P maka berkomentar Benar
{Nama file : IF01.cpp}
- If … Else …
- Perintah IF …. ELSE memiliki bentuk umum sebagai berikut :
if (kondisi) pernyataan1 else
pernyataan2
Bentuk diatas mempunyai arti jika kondisi benar maka pernyataan1 akan
dikerjakan dan jika kondisi salah maka pernyataan2 yang dikerjakan.
- Seperti pada perintah IF, maka perintah IF …. ELSE juga dapat diikuti
……
……….
if (kondisi)
Dibawah ini contoh flowchart, algoritma dan program Pemilihan/Selection, apabila
{Nama file : IF02.cpp}
II. Soal praktikum / latihan
Buat Pseudecode, Flowchart dan Programnya
Perintah IF
2. Buatlah soal untuk mengitung, apabila dimasukkan angka < 10 maka akan menghitung b=angka*10+100-20 Seperti di bawah ini : dengan inputan (nama file : Prak2-02.cpp)
3.
Hitunglah jika suatu Total belanja <200.000 maka menampilkan
“
Tidak
mendapatkan diskon”. (Total belanja = Quantity barang * Harga Barang)
(nama file : Prak2-03.cpp)
4.
Buatlah program untuk menampilkan : Nama, Nim, Angkatan dan Kelas
anda,
Selain dari pilihan diatas makan menampilkan “ Data yang anda masukan salah” (nama file : Prak2-04.cpp)5. Diinput sebuah nilai, jika nilai > 70 maka berkomentar “BERHASIL” (nama file : Prak2-05.cpp)
6. Diinput dua buah nilai, jika nilai pertama > nilai kedua maka berkomentar “ADA PENINGKATAN”
(nama file : Prak2-06.cpp)
7. Diinput dua buah nilai, jika nilai pertama < nilai kedua maka berkomentar “COBA LAGI” (nama file : Prak2-07.cpp)
8. Diinputkan sebuah nilai, jika nilai > 50 dan nilai < 80 maka berkomentar “tingkatkan prestasi anda” (nama file : Prak2-08.cpp)
9. Diinputkan jam pulang kuliah, jika jam pulang kuliah > 18.00 maka berkomentar “segera kembali kerumah masing-masing” (nama file : Prak2-09.cpp)
10. Apabila Nilai Akhir < 60, maka “Tidak Lulus” [Nilai Akhir = 40%*UAS+ 30%*UTS+20%*Tugas+10%*Absen] (nama file : Prak2-10.cpp)
11. Apabila Total Belanja > 100jt, mendapatkan “Sepeda Motor“ (nama file : Prak2-11.cpp)
12. Dibaca dua buah bilangan yang membedakan apakah A > B, apabila lebih besar maka berkomentar “Benar” tetapi kalau tidak akan berkomentar “Salah” (nama file : Prak2-12.cpp)
13.
Diketahui A = 30 dan B=25. Jika A<B maka akan menampilkan “Nilai
Benar”
(nama file : Prak2-13.cpp)14.
Diketahui angka=6 , jika angka>5 maka akan menghitung y=angka*10-18
(nama file : Prak2-14.cpp)
16. Dibaca dua buah bilangan yang membedakan apakah A < B, apabila lebih kecil maka berkomentar “Salah” (nama file : Prak2-16.cpp)
17. Apabila tinggi seseorang > 160cm, dikategorikan “Manusia Melar” (nama file : Prak2-17.cpp)
18. Apabila yang dimasukkan angka > 5, maka Y = angka*10+100 (nama file : Prak2-18.cpp)
19. Apabila nilai ujian < 60, maka “Tidak Lulus” (nama file : Prak2-19.cpp)
20. Jika Total Belanja > 5jt, maka mendapat diskon 5% dari total belanja (nama file : Prak2-20.cpp)
21. Menentukan bilangan yang dimasukkan adalah bilangan ganjil (nama file : Prak2-21.cpp)
22. Apabila Total Belanja < 100.000, maka “Tidak Mendapatkan Diskon”. [Total Belanja = Quantity Barang*Harga Brg] (nama file : Prak2-22.cpp)
23. Menentukan tahun yang dimasukkan adalah tahun kabisat (nama file : Prak2-belanja sebelum diskon, dan total yang harus dibayar setelah diskon. Jika total belanjanya lebih dari 50.000 maka mendapatkan diskon 10% (nama file : Prak2-24.cpp)
27. Karyawan di PT sejahtera dihitung perjam sebesar Rp,3500/jam. Jika jam kerja lebih dari 48 jam maka dihitung lembur. Gaji jam untuk lembur adalah Rp, 4000/jam Hitung jumlah yang harus di dapat jika dia bekerja selama seminggu (nama file : Prak2-27.cpp)
28. Andi mejual bolpoint di tokonya dengan harga Rp 1.000,- per biji . dengan ketentuan akan memberi diskon 20% setiap membeli seharga Rp50.000,00. Tampilkan total yang harus dibayar seoraang pembeli sesudah dikurangi harga diskon (nama file : Prak2-28.cpp)
29. Tampilkan sebuah kondisi jika berat badan lebih dari 70 kg maka akan menampilkan “Kamu Gendut”.(tanpa inputan) (nama file : Prak2-29.cpp)
Perintah IF ... Else
31. Dibaca dua buah bilangan yang membedakan apakah A < B, apabila lebih kecil maka berkomentar “Salah” tetapi kalau tidak akan berkomentar “Benar” (nama file : Prak2-31.cpp)
32. Apabila Total Belanja < 100.000, maka “Tidak Mendapatkan Diskon”. [Total Belanja = Quantity Barang*Harga Brg] tetapi jika tidak akan berkomentar “Mendapat Diskon” (nama file : Prak2-32.cpp)
33. Bu Novita menjual mangga golek dengan harga Rp. 1.100,- per buah. Seorang pembeli akan mendapat diskon sebesar 10% jika total pembelian di atas Rp. 100.000,- Tampilkan total yang harus dibayar seorang pembeli, besarnya diskon yang didapat dan total yang harus dibayarkan sesudah dikurangi dengan diskon. (nama file : Prak2-33.cpp)
34. Sebuah perusahaan akan mengadakan test penerimaan karyawan baru. Setiap pelamar akan dipanggil untuk mengikuti test jika pelamar tersebut berumur antara 20 tahun s.d. 30 tahun. Buatlah program dengan C++ yang akan memberikan keterangan apakah seseorang akan dipanggil atau tidak. Kalau usianya < 20 maka tidak dipanggil (nama file : Prak2-34.cpp)
35. Dalam acara orientasi studi, seorang peserta harus mencari tandatangan. Tandatangan dosen dinilai 3, tandatangan mahasiswa senior yang panitia dinilai 2, tandatangan karyawan dan mahasiswa senior lain 1. Peserta dinyatakan lulus bila berhasil mendapatkan nilai 80 atau lebih, mendapat hukuman ringan bila < 80. (nama file : Prak2-35.cpp)
36. Hotel Merah Delima mempunyai sistem informasi tentang pembayaran penginapan, dengan masukan input : lama menginap dan harga kamar. Jumlah bayar dihitung dari lama menginap dikali dengan harga kamar/hari. Jika jumlah bayar diatas 700.000 mendapat discount 30%, jika jumlah bayar kurang dari 700.000 mendapat discount 20%. Total bayar akhir dihitung dari jumlah bayar dikurangi discount (nama file : Prak2-36.cpp)
37. Sebuah bank akan menerima pembukaan tabungan nasabah jika uang yang akan di tabung minimal Rp. 500.000, buatlah program untuk kasus diatas, dengan uang nasabah yang di input, jika uang nasabah lebih dari Rp. 500.000 maka akan mencetak “SELAMAT ANDA DIPERBOLEHKAN MEMBUKA TABUNGAN BARU” , jika yang akan di tabungkan nasabah kurang dari Rp. 500.000 maka akan menampilka “MAAF SALDO ANDA TIDAK MENCUKUPI” (nama file : Prak2-37.cpp)
38. Buatlah program kelulusan, dengan memasukan nilai akhir kedalam program jika (nilaiakhir > 70) maka akan menamplikan “ANDA LULUS” selain itu menampilka “ANDA TIDAK LULUS” (nama file : Prak2-38.cpp)
39. Buatlah program untuk menghitung berat badan ideal dengan rumus (BI = TinggiBadan – 110) jika nilai (BI = BeratBadan) maka mencetak “Berat badan anda ideal”, jika (BI > BeratBadan) maka mencetak “anda kelebihan berat badan”, jika (BI < BeratBadan) maka mencetak “anda terlalu kurus” (nama file : Prak2-39.cpp)
41. Buatlah program
jika (X=>5) maka
( (∗
10 )−
( 25 + ) )jika (X<5) Maka
( ) ,nilai hasil harus ditampilkan)
(nama file : Prak2-41.cpp)42. Sebuah guru akan mengakumulasikan nilai ujian akhir, buatlah program menghitung nilai ratarata dari Nilai tugas , nilai UTS dan nilai UAS, jika nilai ratarata lebih dari 70 maka akan menampilkan “SELAMAT ANDA LULUS”, jika tidak akan menampilkan “ANDA TIDAK LULUS” (nama file : Prak2-42.cpp)
43. sebuah gojek akan mengadakan sebuah promo jika jarak yang ditempuh kurang dari 5.KM maka akan mencetak “ANDA TIDAK HARUS BAYAR” jika jarak lebih dari 5.km maka akan menampilkan “SILAHKAN BAYAR.” (nama file : Prak2-43.cpp)
44. Buatlah program dengan membuat 2 menu, jika memilih 1 maka akan
menjalankan program menghitung luas persegi panjang jika tidak menghitung keliling persegi panjang (nama file : Prak2-44.cpp)
45. Diinputkan sebuah huruf, jika huruf A maka cetak huruf. Jika tidak maka berkomentar “bukan huruf A” (nama file : Prak2-45.cpp)
46. Diinputkan berat badan seorang mahasiswa, jika berat badan > 60kg maka berkomentar “almamater ukuran besar”. Jika tidak maka berkomentar “almamater ukuran kecil” (nama file : Prak2-46.cpp)
47. Hitunglah volume kaleng susu berbentuk tabung, jika volume > 150 maka berkomentar “Tidak perlu tambahan susu”. Jika tidak volume dikalikan Rp. 8.000 (nama file : Prak2-47.cpp)
48. Hitunglah luas balok dan volume balok, jika luas = volume maka dilakukan penjumlahan terhadap kedua nilai. Jika tidak maka dilakukan pengurangan terhadap kedua nilai (nama file : Prak2-48.cpp)
49. Diinputkan nilai tugas, jika nilai < 60, maka berkomentar “hubungi dosen”. Jika tidak nilai dicetak (nama file : Prak2-49.cpp)
50. Dilakukan perhitungan nilai rata-rata, jika nilai rata-rata > 80 maka berkomentar “LULUS”. Jika nilai rata-rata < 80 maka nilai rata-rata ditambahkan 10 (nama file : Prak2-50.cpp)
51. Diinputkan sebuah angka, jika angka yang diinputkan merupakan angka genap maka dilakukan proses perhitungan volume kubus. Jika tidak maka dilakukan proses perhitungan luas kubus (nama file : Prak2-51.cpp)
52. Diinputkan sebuah jumlah barang, jika jumlah barang > 100 maka berkomentar “anda pelanggan setia” . Jika tidak maka berkomentar “selamat berbelanja” (nama file : Prak2-52.cpp)
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 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,
2003