Minggu, 20 Februari 2011

Semester 1, Algoritma 3, Soal cerita


1.      Seseorang mempunyai tabungan di sebuah bank. Ia dapat menyetor dan mengambil uangnya di bank tersebut, namun jumlah saldo minimum yang harus disisakan di dalam adalah Rp. 10.000,-. Ini artinya, jika saldonya Rp. 10.000,- ia tidak dapat mengambil uang lagi. Kode transaksi untuk menyetor adalah 0 dan kode transaksi untuk mengambil adalah 1. buatlah algoritma yang menyimulasikan transaksi yang dilakukan orang tersebut. Algoritma menerima masukan berupa kode transaksi dan jumlah uang yang disetor/ diambil. Rancanglah algoritma tersebut sehingga memungkinkan penabung dapat melakukan transaksi berulangkali sampai saldo yang tersisa Rp. 10.000,- atau jumlah uang yang diambil lebih besar dari saldonya.
2.      Jika kita berbelanja di pasar swalayan/supermarket, nilai total belanja kita seringkali bukan kelipatan pecahan rupiah yang berlaku. Misalnya, nilai total belanja adalah Rp. 19.212,-. Andaikan saat ini pecahan rupiah yang berlaku paling kecil Rp. 25,-. Selain itu, juga ada pecahan Rp. 50,- dan Rp. 100,-. Umumnya kasir pasar swalayan membulatkan nilai belanja ke pecahan yang terbesar. Jadi Rp. 19.212,- dibulatkan menjadi Rp. 19.225,-. Hal ini jelas merugikan konsumen. Misalkan Anda memiliki pasar swalayan yang jujur dan tidak merugikan pembeli, sehingga jika ada nilai belanja yang bukan kelipatan pecahan yang ada, maka nilai belanja itu dibulatkan ke pecahan terendah. Jadi, Rp 19.212,- dibulatkan menjadi Rp. 19.200,- .
Tulislah algoritma yang membaca nilai belanja (integer) lalu membulatkannya ke nilai uang dengan pecahan terendah.
  1. PROGRAM Transaksi_keuangan
DEKLARASI
uang, saldo, kode, saldo_akhir = integer
ALGORITMA
Writeln(“Masukkan Saldo awal = “)
Read(saldo)
            if(saldo <= 10000)
writeln(“Anda tidak dapat melakukan transaksi karena saldo minimal anda tidak mencukupi”)
            endif
            while (saldo > 10000)
                        writeln(“Masukkan kode transaksi”)
writeln(“0 = Untuk setor uang tunai”)
writeln(“1 = Untuk tarik uang tunai”)
                        writeln(“masukkan kode transaksi : “)
                                    if(kode = 0)then
                                                saldo_akhir ← saldo + uang
                                                writeln(“Saldo akhir : “,saldo_akhir)
                                    else
                                                saldo_akhir ← saldo + uang
                                                writeln(“Saldo akhir : “,saldo_akhir”)

                        endif
endwhile
  1. PROGRAM Belanja
DEKLARASI
harga, sisa = integer
ALGORITMA
writeln(“Selamat datang di Toko Swalaayan UBM”)
write(“Total harga : Rp. ”,harga,”,-“)
Sisa harga mod 25
If(sisa<>0)then
harga = harga - sisa
endif
Writeln(“Harga yang harus anda bayar : Rp. ”,harga,”,-“)
Write(“Terima kasih sudah berkunjung”)

1 komentar: