May 2023 1 13 Report
Buatlah program java dibawah ini:


Anda diminta untuk membuat sistem kasir suatu toko yang menjual alat musik dan barang elektronik. Toko tersebut memiliki sistem membership untuk pelanggan yang dibagi menjadi 3: Premium, Gold, dan Silver, masing-masing memiliki potongan harga 10%, 7.5% dan 5% dan jika tidak menjadi member maka tidak mendapatkan potongan (diperiksa dengan atribut isMember dan memberType). Selain itu, karyawan toko tersebut jika membeli juga dapat memiliki potongan sendiri yaitu 12.5%.

2. Barang-barang tertentu dapat diberi potongan tertentu sesuai kategorinya (menggunakan interface seperti di diagram). Ketentuannya alat musik dapat memiliki diskon maksimal 15% dan barang elektronik maksimal 20%. Penghitungan diskon ini dicek terlebih dahulu atribut onSale-nya apabila true maka diskon bisa diterapkan begitu pula sebaliknya.

Opsional, Toko tersebut dapat menerapkan sistem voucher. Anda dapat menentukan sendiri kode vouchernya dan besaran potongannya. Ketentuan lainnya adalah kode voucher memiliki rentang tanggal berlaku, dan hanya bisa di-apply apabila tanggal pada PC anda ada dalam rentang tanggal tersebut. Gunakan fungsi yang sudah disediakan di java.util.Date perhatikan apakah tanggal di PC anda sebelum tanggal yang tertera di attribut validityPeriod jika tidak getDiscount() akan menampilkan voucher tidak valid dan mengembalikan nilai 0, tetapi program tetap berjalan. Hint:

Harga per barang diambil dengan method getPrice() dan harus sudah dihitung

dengan diskon per barang-nya. • Objek dari class Cashier digunakan untuk melakukan penjualan, method setPrice() digunakan untuk menambah harga dari barang yang ditambahkan, method setDisc() digunakan untuk menambahkan potongan harga dari membership (dan karyawan) dan voucher. Sedangkan method getTotal() akan menampilkan harga akhir.

4. Jelaskan kepada asisten Anda kapan harus menggunakan abstract class atau interface!

Life Enjoy

" Life is not a problem to be solved but a reality to be experienced! "

Get in touch

Social

© Copyright 2013 - 2024 KUDO.TIPS - All rights reserved.