Skip to content

Instantly share code, notes, and snippets.

@fitrh
Last active October 25, 2021 08:32
Show Gist options
  • Save fitrh/f6faadd5a967c9d270fa3e73dd42b034 to your computer and use it in GitHub Desktop.
Save fitrh/f6faadd5a967c9d270fa3e73dd42b034 to your computer and use it in GitHub Desktop.
Tugas Praktikum Pengantar Pemrograman 2021

Simple Cashier

Ringkasan

SysMart membutuhkan bantuan anda sebagi programmer untuk merancang sebuah aplikasi kasir CLI (Command Line Interface) untuk memvalidasi dan menghitung banyaknya kembalian dari pembayaran yang diberikan, tidak hanya itu, SysMart juga menginginkan program tersebut agar dapat menghitung banyaknya kembalian untuk setiap pecahan uang yang mereka miliki.

Mereka memiliki pecahan:

  • 100.000
  • 50.000
  • 20.000
  • 10.000
  • 5.000
  • 2.000
  • 1.000
  • 500
  • 200
  • 100

SysMart menggunakan satuan lembar untuk uang pecahan 1.000 keatas dan buah untuk pecahan 500 kebawah.

Jika pelanggan membayarkan sejumlah uang dan kembaliannya ada diluar pecahan tersebut, SysMart menganggapnya sebagai donasi.

Bantulah SysMart untuk merancang aplikasi tersebut, berikut spesifikasi lengkap dan referensi programnya.

Spesifikasi

  1. Program menerima inputan berupa integer
  2. Jika pembeli memasukkan selain integer, program akan interupsi lalu berhenti
  3. Jika tidak ada kembalian, program akan meyampaikan bahwa pembayaran yang dilakukan menggunakan uang pas lalu berhenti
  4. Jika uang yang dibayarkan tidak cukup, program akan menyampaikan bahwa uang pembeli belum cukup, lalu berhenti
  5. Program menampilkan total kembalian diikuti dengan banyaknya masing-masing pecahan yang disediakan
  6. Program hanya menampilkan pecahan yang digunakan sebagai kembalian, e.g. Jika harga barang 135.000, pembeli membayar sebesar 150.000, kembalian sebesar 15.000, maka program hanya menampilkan banyaknya pecahan 10.000 dan 5.000
  7. Jika masih ada kembalian dibawah 100, maka program akan menampilkan kembalian tersebut sebagai donasi

Referensi

simplescreenrecorder-2021-10-15_21.08.36.mp4
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment