Contoh lengkap program kasir sederhana dengan Python yang mudah dipahami untuk pemula, apakah ada? lengkap untuk bahan belajar? full source code? mudah untuk pemula?.
Python menjadi bahasa pemrograman dalam mata kuliah pemrograman dasar pada jurusan Teknik Informatika karena kemudahannya untuk dipelajari baik oleh seorang pemula yang belum kenal sekalipun tentang pemrograman.
Belajar dapat dilakukan dimana saja. Banyak referensi baik itu youtube maupun blog seperti ini, tak terkecuali di ekorkode.com.
Nah pada kesempatan kali ini saya akan membagikan sebuah source code buatan saya sendiri.
Kasir
Sebuah aplikasi atau program kasir pada umumnya dapat melakukan semua hal yang berurusan dengan transaksi dari semua produk yang mereka jual dalam tokonya. Di dalam program tersebut tentu terdapat fitur seperti harga, stok, uang tunai, kembalian, waktu transaksi, dll.
Baiklah pada program kasir sederhana yang saya buat berupa kasir untuk sebuah kedai makanan dengan fitur:
- Menu makanan & minuman.
- Interaktif Input.
- Simulasi STRUK (Nama, Tagihan, Uang Tunai, Pembelian).
Narasi Kasir Kedai Ekorkode
Source Code Program Kasir Python Lengkap Mudah
print("----------------- Program Kasir Sederhana Ekorkode -----------------") pembeli = input("Masukkan nama Pembeli: ") print ("Nama Pembeli :", pembeli) def fungsimakanan(): global totalmkn global porsi global mkn print ("\n----------------- Menu Makanan -----------------") print("1. Nasi Goreng - Rp 15000") print("2. Soto - Rp 9000") print("3. Mie Ayam - Rp 11000") nomor=int(input("Masukan Pilihan: ")) porsi= int(input("Berapa Porsi: ")) if nomor==1: totalmkn=porsi*15000 print (porsi," porsi Nasi Goreng Telur = Rp", totalmkn) mkn=("Nasi Goreng") elif nomor==2: totalmkn=porsi*9000 print (porsi," porsi Soto = Rp", totalmkn) mkn=("Soto") elif nomor==3: totalmkn=porsi*11000 print (porsi, " porsi Mie Ayam = Rp", totalmkn) mkn=("Mie Ayam") else: print("Pilihan tidak ada, silahkan masukan lagi!!") fungsimakanan() def fungsiminuman(): global totalmnm global mnm global gelas print("\n----------------- Menu Minuman -----------------") print("1. Es teh - Rp 2000") print("2. Es jeruk - Rp 3500") print("3. Es kopi - Rp 4000") nomor=int(input("Masukan Pilihan: ")) gelas= int(input("Berapa Gelas: ")) if nomor==1: totalmnm=gelas*2000 print (gelas," Es Teh = Rp", totalmnm) mnm=(" Gelas Es Teh") elif nomor==2: totalmnm=gelas*3500 print (gelas, " Gelas Es Jeruk = Rp", totalmnm) mnm=("Es Jeruk") elif nomor==3: totalmnm=gelas*4000 print (gelas, " Gelas Es Kopi = Rp", totalmnm) mnm=("Es Kopi") else: print("Pilihan tidak ada, silahkan masukan lagi!!") fungsiminuman() fungsimakanan() fungsiminuman() totalsemua=totalmkn+totalmnm print("\nTotal harus Dibayar: Rp",totalsemua) uang=int(input("Uang Tunai Pembeli: Rp ")) kembalian=int(uang-totalsemua) print("Kembalian :",kembalian) print("\n==================================") print("========== S T R U K B E L I =========") print("==================================") print ("Nama\t\t:",pembeli) print ("Beli\t\t:",porsi,mkn,"( Rp", totalmkn,")") print ("\t\t ",gelas,mnm,"( Rp", totalmnm,")") print ("Tagihan\t\t: Rp",totalsemua) print ("Dibayar\t\t: Rp",uang) print ("Kembalian\t: Rp",kembalian) print("==================================") print("==================================")
Hasil Run Program
Algoritma Penjelasan Jalan Program:
- Mula-mula kita diminta menginputkan nama pembeli, kemudian nama dimasukkan ke variabel "pembeli".
- Selanjutnya memanggil fungsi "fungsimakanan()", yang didalamnya menampilkan menu makanan 1/2/3, kita diminta memilih dengan memasukkan angka 1/2/3, jika memilih selain angka tersebut pertanyaan menu akan diulang dengan pemanggilan ulang fungsi "fungsimakanan()" pada kondisi else.
- Memasukkan jumlah "porsi".
- Mendapatkan total harga makanan dengan cara "porsi*harga" makanan terkait, dimasukkan ke dalam variabel "totalmkn". Dan "mkn" menampung nama makanan sesuai menu yang dipilih.
- Selanjutnya memanggil fungsi "fungsiminuman()", yang didalamnya menampilkan menu minuman 1-3, kita diminta memilih dengan memasukkanangka 1/2/3, jika memilih selain angka tersebut pertanyaan menu akan diulang dengan pemanggilan ulang fungsi "fungsiminuman()" pada kondisi else.
- Memasukkan "gelas".
- Mendapatkan total harga minuman dengan cara "gelas*harga" minuman terkait, dimasukkan ke dalam variabel "totalmnm". Dan "mnm" menampung nama minuman sesuai menu yang dipilih.
- Menampilkan total yang harus dibayar dengan cara menambah "totalmkn+totalmnm" dimasukkan ke dalam variabel "totalsemua".
- Menginputkan uang yang diberikan pembeli dimasukkan ke dalam variabel "uang".
- Menampilkan kembalian dengan cara "uang-totalsemua".
- Terakhir mencetak STRUK dengan data dari proses-proses yang sudah terjadi.
makasih bang dah ngasi bahan pembelajaran
BalasHapusOke bang😀
Hapuskalo jenis makanan yang dipilih lebih dari 1, untuk programnya gimana bang?, misal makanan yang dipilih nasi goreng 2 sama soto 2
BalasHapusItu harus pakai Array bang, kalo yang ini kan cuman sederhana aja
HapusBagaimana cara menggunakan array
Hapusbang misalnya ingin beli misalnya makanan nya saja trus minumalnya di skip/nggk dibeli itu gimana bang?
BalasHapusatau misal kebalikannya cuma beli minumannya aja
Hapus~Tambah Menu lagi aja
Hapusprint("4. Tidak Makan - Rp0")
~Terus kasih logika
elif nomor==4:
total1=porsi*0
jenis1=("tanpa makanan")
dan seterusnya...
yang minuman juga gitu
HapusAssalamualaikum warahmatullahi wabarakatuh kak mau bertanya klau mau buat laporannya buatnya gimana ya n tentukan class sama fungsinya juga kak
BalasHapusWaalaikumsalam warahmatullahi wabarakatuh,Oh kalo itu sih lebih lanjut ya, belum sempet buat, kalo ini sederhana aja sih kak.
HapusBang kalau mau tambah dia bawah code 'Adakah ada mau beli lagi?(Y/N)' bagaimana ya?
BalasHapusharus pake Looping / Goto kalo itu
Hapushalo kak semisal saya ingin memilih kembali menu diatas gimana ya kak ??
BalasHapusBisa ditambahka Looping atau fungsi Go To kak
Hapusbang minta tolong gabungin 2 sintaks saya, saya bingung. jadi awal masuk ke login. jika login berhasil maka akan muncul menu kasir dan jika login salah maka akan diulangi samapi login berhasil. diedit sintaknya juga gapapa bang
BalasHapussintaks 1 (login)
nama= "rama"
kunci= "12345"
pilihan='y'
a=0
while pilihan=='y':
username=str(input ("masukkan username : "))
password=str(input ("masukkan password : "))
if (username==nama and password ==kunci) :
print ("password benar")
break
elif (username==nama or password==kunci):
print ("salah satu dari username dan password salah")
else:
print ("password salah")
a=a+1
if a==3:
print ("sudah 3x input")
break
print()
lagi=str(input("input username dan password lagi? y/t"))
sintaks 2 (menu kasir)
pilihan="y"
while pilihan=="y":
print("""
==============================
Snowflake Coffe
List Menu Minuman Kopi
==============================
a. ES Kopi Susu : Rp 11.000
b. ES Kopi Coklat : Rp 12.000
c. ES Kopi Hitam : Rp 11.000
d. Ice Americano : Rp 14.000
==============================
""")
pesan=str(input("masukkan list abjad menu kopi ="))
jumlahpesan=int(input("masukkan jumlah pesanan ="))
if pesan == "a":
listnama= "ES Kopi Susu"
harga=(11000*jumlahpesan)
ppn= int(harga * 0.1)
if jumlahpesan >= 5:
diskon = int(harga*0.2)
totalharga=int(harga-diskon+ppn)
else:
diskon =(0)
totalharga=int(harga+ppn)
elif pesan == "b":
listnama= "ES Kopi Coklat"
harga = (12000*jumlahpesan)
ppn = int(harga * 0.1)
if jumlahpesan >= 5:
diskon = int(harga * 0.2)
totalharga =int(harga-diskon+ppn)
else:
diskon =(0)
totalharga =int(harga+ppn)
elif pesan == "c":
listnama= "ES Kopi Hitam"
harga=int(11000*jumlahpesan)
ppn = int(harga * 0.1)
diskon=0
totalharga=int(harga+ppn)
elif pesan == "d":
listnama= "ES Americano"
harga=int(14000*jumlahpesan)
ppn = int(harga * 0.1)
diskon=0
totalharga = int(harga+ppn)
else:
listnama = "-"
harga = "-"
ppn = "-"
diskon = "-"
totalharga = "-"
pilihan=input("menu tidak tersedia, silahkan masukkan abjad menu yang tersedia silahkan ulangi kembali Y/N =")
print("--------------------------")
print("Snowflake Coffe")
print("--------------------------")
print("Menu :",listnama)
print("Jumlah Pesan :", jumlahpesan)
print("Harga :", harga)
print("Diskon :", diskon)
print("PPN :", ppn)
print("--------------------------")
print("Jumlah Bayar :", totalharga)
bayar=int(input("pembayaran ="))
kembalian= (bayar-totalharga)
print("uang kembalian", kembalian)
print("--------------------------")
pilihan=input("apakah anda ingin order kembali y/n =")
terimakasih banyak bang
saya coba salah 3 kali malah langsung menu kasir bukan kembali ke pengisian username dan password dan saya coba pesan selain a,b,c,d malah error gabisa kembali ke menu pilihan kasir
HapusBang fungsi global disitu buat apaan bang ?
BalasHapusItu supaya variabel yang didefinisikan pakai "global" bisa dipakai diluar fungsi(def.
Hapusfungsi yang diluar def kayak total1 = 0 itu definisi nya gmna bang
BalasHapusBuat definisi awal variabel bang, menghindari error
HapusBang ini make metode apa ya?
BalasHapusAlhamdulillah gan saya sudah memahami sintaks nya , ditunggu Tutorial selanjutnya gan
BalasHapusasalamualaikum bg, mau nanya fungsi syntax \n dan \t itu untuk apa ya??
BalasHapusCara menggunakan array gimana ya?
BalasHapusBang mau tanya kalau cara cetak hasil struk pemrograman di vs code gimana ya bang?
BalasHapus