oke gaiss selanjutnya kita bakal bahas project tentang kasir dengan pemerograman python langsung cekidot ini algoritmanya yaa :
Algoritma
1. START (TERMINATION)
2. Harga awal KG = 5000 , RB = 10000 , PK = 8000 , OM = 10000 , TH = 2000 , SS = 8000 , JK = 4000 , SJ = 5000 (Preparation )
3. Input berapa banyak data ( I/O )
4. Input kode makanan dan banyak pesan ( I/O )
5. Input kode minuman dan berapa banyak pesan (I/O)
6. Jika jumlah pesan > 1 akan Kembali ke step 3 ( Decesion )
7. Input jumlah pembayaran ( I/O )
8. Print no , jenis , harga satuan , banyak beli , subtotal ( )
9. if listkode[i] =="KG" or listkode[i] =="kg":
jns_nama="KENTANG GORENG"
harga_satuan=5000
elif listkode[i] =="RB" or listkode[i] =="rb":
jns_nama="ROTI BAKAR"
harga_satuan=10000
elif listkode[i] =="PK" or listkode[i] =="pk":
jns_nama="PISANG KEJU"
harga_satuan=8000
elif listkode[i] =="OM" or listkode[i] =="om":
jns_nama="OMLETTE MIE"
harga_satuan=10000
elif listkode[i] =="TH" or listkode[i] =="th":
jns_nama="TEH HANGAT"
harga_satuan=2000
elif listkode[i] =="SS" or listkode[i] =="ss":
jns_nama="ES SUSU SODA"
harga_satuan=8000
elif listkode[i] =="JK" or listkode[i] =="jk":
jns_nama="ES JERUK"
harga_satuan=4000
elif listkode[i] =="SJ" or listkode[i] =="sj":
jns_nama="SUSU JAHE"
harga_satuan=5000
else:
()
(exit)
10. Subtotal = Harga satuan * Banyak beli ( Prosses )
11. Jumlah Harga = 0 + subtotal ( Prosses )
12. pajak = jumpah harga * 0.1 ( Prosses )
13. kembalian = jumpah pembayaran – jumlah harga – pajak ( Prosses )
14. Print no , jenis , harga satuan , banyak beli , subtotal hasil ( Proses )
15. Print total bayar (I/O)
16. Print PPN (I/O)
17. Print Kembali (I/O)
18. END (termination )
Listing programnya
def garis ():
print(60*"-")
#Menu
print(" Cafe Zen ")
print(" Tempat Nongkrong paling Asikk ")
print("-------------------------------------------|------------------------------------------")
print("Kode Menu Makanan Harga | Kode Menu Minuman Harga ")
print("-------------------------------------------|------------------------------------------")
print("KG Kentang Goreng Rp. 5000 | TH Teh Hangat Rp. 2000")
print("RB Roti Bakar Rp. 10000 | SS Es Susu Soda Rp. 8000")
print("PK Pisang Keju Rp. 8000 | JK Es Jeruk Rp. 4000")
print("OM Omlette Mie Rp. 10000 | SJ Susu Jahe Rp. 5000")
print("-------------------------------------------|------------------------------------------")
print("\n")
#Batasan
banyak=int(input("Banyak Data : "))
#list
listbanyak_beli=[] # jadi didalam [] ada variabel setelah di input
listkode=[]
#Input
for i in range(banyak): #fungsi i untuk menyimpan nilai dari perulangan
print("\nData Ke-",i+1)
kode_data=input("Kode Makanan [KG/RB/PK/OM] Kode Minuman [TH/SS/JK/SJ] : ")
listkode.append(kode_data) #untuk memasuk kan kode_ptg kedalam listkode
banyak_beli=int(input("Banyak Beli : "))
listbanyak_beli.append(banyak_beli)
jmlh_byr = input("\nJumlah Bayar : ")
#output head
print(" Kafe Zen ")
garis()
print("No. Jenis Harga Banyak Sub")
print(" Satuan Beli Total")
garis()
#Proses Oprasi
jmlh_hrg=0
for i in range(banyak):
#fungsi if
if listkode[i] =="KG" or listkode[i] =="kg":
jns_nama="KENTANG GORENG"
harga_satuan=5000
elif listkode[i] =="RB" or listkode[i] =="rb":
jns_nama="ROTI BAKAR"
harga_satuan=10000
elif listkode[i] =="PK" or listkode[i] =="pk":
jns_nama="PISANG KEJU"
harga_satuan=8000
elif listkode[i] =="OM" or listkode[i] =="om":
jns_nama="OMLETTE MIE"
harga_satuan=10000
elif listkode[i] =="TH" or listkode[i] =="th":
jns_nama="TEH HANGAT"
harga_satuan=2000
elif listkode[i] =="SS" or listkode[i] =="ss":
jns_nama="ES SUSU SODA"
harga_satuan=8000
elif listkode[i] =="JK" or listkode[i] =="jk":
jns_nama="ES JERUK"
harga_satuan=4000
elif listkode[i] =="SJ" or listkode[i] =="sj":
jns_nama="SUSU JAHE"
harga_satuan=5000
else:
()
(exit)
#operasi Subtotal
subtotal=harga_satuan * listbanyak_beli[i]
#untuk SUM subtotal
jmlh_hrg=jmlh_hrg+subtotal
#PPN/PAJAK 10%
pjk=jmlh_hrg*0.1
#operasi kembali
Kembali=int (jmlh_byr) - int (jmlh_hrg) - int(pjk)
print(i+1," ",jns_nama,"\t\t",harga_satuan,"\t\t",listbanyak_beli[i],"\t\t\t",subtotal )
garis()
print(" Total Bayar Rp.",(jmlh_hrg))
print(" PPN Rp.",(pjk))
print(" Jumlah Bayar Rp.",jmlh_byr)
print(" -----------------------------------------")
print(" Kembali Rp.",Kembali)
print(" -----------------------------------------")
print("Terima kasih sudah berbelanja di toko kami, selamat menikmati makanan nya :)")http://ardi-widiyanto.blogspot.com/
Tampilan Menu
Tampilan Intput
Tampilan Output
PENJELASAN PROGRAM
http://ardi-widiyanto.blogspot.com/
Ø def garis ():
print(60*"-")
Fungsi dalam Python didefinisikan menggunakan kata kunci def. Setelah def ada nama pengenal “Garis” fungsi diikut dengan parameter yang diapit oleh tanda kurung dan diakhir dingan tanda titik dua “:”. Baris berikutnya berupa blok fungsi yang akan dijalankan jika fungsi dipanggil.
Ø Print
Berfungsi untuk mencetak atau menampilkan objek ke perangkat keluaran (layar) atau ke file teks.
Ø banyak=int(input("Banyak Data : "))
Banyak merupakan Variabel dan Variabel adalah lokasi memori yang dicadangkan untuk menyimpan nilai-nilai.
Int sebagai tipe data integer yang berfungsi Menyatakan bilangan bulat.
Input adalah masukan yang kita berikan ke program.
Ø listbanyak_beli=[]
listkode=[]
Fungsi list
berfungsi untuk membuat list dari objek iterable (string, tuple, dan
sebagainya)
iterable (opsional) – objek yang akan dibuat menjadi list
Ø for i in range(banyak):
Perulangan for untuk melakukan perulangan dalam berapa banyak data yang di input pada variable banyak
Ø
kode_data=input("Kode Makanan [KG/RB/PK/OM] Kode
Minuman [TH/SS/JK/SJ]:")
listkode.append(kode_data)
append Berfungsi untuk Menambahkan nilai ke dalam list
http://ardi-widiyanto.blogspot.com/
Ø garis()
Memanggil fungsi print(60*"-")
Ø jmlh_hrg=0
Variabel yang menyatakan bahwa nilai nya 0
Ø
if listkode[i] =="KG" or listkode[i] =="kg":
jns_nama="KENTANG
GORENG"
harga_satuan=5000
elif listkode[i] =="RB" or listkode[i] =="rb":
jns_nama="ROTI BAKAR"
harga_satuan=10000
elif listkode[i] =="PK" or listkode[i] =="pk":
jns_nama="PISANG
KEJU"
harga_satuan=8000
elif listkode[i] =="OM" or listkode[i] =="om":
jns_nama="OMLETTE
MIE"
harga_satuan=10000
elif listkode[i] =="TH" or listkode[i] =="th":
jns_nama="TEH HANGAT"
harga_satuan=2000
elif listkode[i] =="SS" or listkode[i] =="ss":
jns_nama="ES SUSU
SODA"
harga_satuan=8000
elif listkode[i] =="JK" or listkode[i] =="jk":
jns_nama="ES JERUK"
harga_satuan=4000
elif listkode[i] =="SJ" or listkode[i] =="sj":
jns_nama="SUSU JAHE"
harga_satuan=5000
else:
()
(exit)
if
, else
dan elif
Kondisi if
digunakan untuk
mengeksekusi kode jika kondisi bernilai benar True
.
Jika kondisi
bernilai salah False
maka statement/kondisi else
akan di-eksekusi.
Listkode[i] berfungsi untuk memanggil list dan [i] berfungsi agar pada waktu memanggil/output secara berurutan
Ø subtotal=harga_satuan
* listbanyak_beli[i]
jmlh_hrg=jmlh_hrg+subtotal
pjk=jmlh_hrg*0.1
Kembali=int (jmlh_byr) - int (jmlh_hrg) - int(pjk)
Operator Aritmatika
* Berfungsi untuk perkalian
+ Berfungsi untuk Penjumlahan
- Berfungsi untuk Pengurangan
Ø print(i+1," ",jns_nama,"\t\t",harga_satuan,"\t\t",listbanyak_beli[i],"\t\t\t",subtotal )
i+1 berfungsi untuk menambahkan nilai I membuat agar nomer berurutan pada hasil
jns_nama Berfungsi untuk memanggil variable jns_nama.
listbanyak_beli[i] Berfungsi untuk memanggil listbanyak_beli secara berurutan.
http://ardi-widiyanto.blogspot.com/
Ø
print(" Total
Bayar Rp.",(jmlh_hrg))
print(" PPN Rp.",(pjk))
print(" Jumlah
Bayar Rp.",jmlh_byr)
print("
-----------------------------------------")
print("
Kembali Rp.",Kembali)
print(" -----------------------------------------")
print("Terima kasih
sudah berbelanja di toko kami, selamat menikmati makanan nya :)")
jmlh_hrg Berfungsi untuk memanggil variable jmlh_harga yang sudah di proses.
pjk Berfungsi untuk memanggil variable pjk yang sudah di proses.
jmlh_byr Berfungsi untuk memanggil variable jmlh_byr yang sudah di proses.
Kembali Berfungsi untuk memanggil variable kembali yang sudah di proses.TERIMA KASIH SUDAH MEMBACA