Disusun untuk Memenuhi Tugas Akhir Matakuliah Praktikum Dasar Pemrograman Komputer
Yang Dibimbing oleh Wahyu Sakti Gunawan Irianto
Oleh:
Sekar Dyah Pitaloka
170533628507
OFFERING C
Abstrak
Pada saat ini sebagian besar restoran dan rumah makan masih menggunakan cara manual
dalam pemesanan dan pembayaran di restoran. Restoran atau rumah makan tersebut masih
menggunakan buku menu atau kertas pesanan untuk menuliskan jumlah pesanan makanan atau
melakukan pembayaran. Hal ini kurang efektif karena para pelayan harus menghitung secara
manual berapa jumlah pesanan dan berapa uang yang harus dibayarkan oleh pelanggan dan
kemungkinan terjadinya kesalahan perhitungan lebih besar yang dapat berimbas pada pendapatan
penjualan restoran atau rumah makan tersebut.
Perhitungan berapa jumlah pesanan dan jumlah uang yang dibayarkan dapat dibantu
dengan bantuan teknologi informasi. Perhitungan tersebut dapat dilakukan dengan sebuah aplikasi
yang dibuat untuk mempermudah pelayan dalam menghitung jumlah pesanan dan jumlah uang
yang harus dibayarkan oleh pelanggan.
Untuk itu dibuatlah sebuah aplikasi pembayaran di restoran dengan menggunakan bahasa
C++. Aplikasi ini menggunakan kompiler MinGW Developer Studio. Pada aplikasi ini, pelayan
memasukkan jenis makanan dan jumlah makanan yang mereka pesan lalu setelah itu aplikasi akan
menghitung dan menampilkan berapa jumlah uang yang harus dibayar oleh pelanggan. Pelanggan
memasukkan jumlah uang yang mereka bayar. Misalnya jumlah uang yang diberikan pelanggan
lebih besar dari yang harus dibayarkan maka aplikasi akan menampilkan jumlah uang yang harus
dikembalikan oleh pelanggan. Jika uang yang diberikan lebih kecil dari jumlah uang yang harus
dibayarkan maka aplikasi ain memberi informasi bahwa uang pelanggan tidak cukup untuk
membayar pesanan makanan dan pelanggan harus memasukkan jumlah uang yang cukup untuk
menyelesaikan pembayaran.
switch(pilihan2) 3. Kesimpulan
{ Dari semua penjelasan yang telah
case 'Y': disampaikan dari proses awal perancangan,
case 'y' : maka dapat ditarik kesimpulan dan saran dapat
goto menu; digunakan sebagai bahan untuk
break;
mengembangkan program ini ke arah yang
case'N':
lebih sempurna. Kesimpulan yang dapat
case 'n' :
diambil antar lain :
cout <<
1. Dengan menggunakan bahasa
endl;
pemrograman C++ dan kompiler MinGW
cout <<
Developer Studio kita dapat merancang
endl;
aplikasi penghitung dan pembayaran di
goto awal;
restoran.
break;
2. Uji coba aplikasi penghitung
default:
dan pembayaran di restoran dengan
cout <<
menggunakan bahasa C ini telah berlangsung
"Inputkan Pilihan dengan
dengan lancar dengan telah berhasilnya
Benar !!!";
aplikasi menghitung total harga pesanan dan
getche();
minuman dan uang yang dikembalikan setelah
}
pembayaran.
4. Lampiran
4.2.1. Algoritma
1. Mulai.
2. Deklarasi variabel *makanan, *minuman, pilihan2, pelanggan[7], harga1, harga2, bayar,
kembalian, total, jum_makan, jum_minum, meja, makan, minum.
3. Masukkan variabel pelanggan dan meja.
4. Jika memenuhi kondisi meja>20 maka kembali ke fungsi awal.
5. Jika tidak maka lanjut ke program slanjutnya.
6. Memanggil fungsi loading();
7. Memanggil fungsi head();
8. Masukkan variabel makan dan jum_makan.
9. Jika memenuhi makan>12 maka kembali ke fungsi mkn.
10. Jika tidak bertemu kondisi makan==1.
11. Jika benar maka tampilkan Nasi Goreng dengan harga 20000.
12. Jika tidak bertemu dengan kondisi berikutnya.
13. Penghitungan kondisi dilakukan sampai makan==12.
14. Memanggil head();
15. Masukkan variabel minum dan jum_minum.
16. Jika minum>10 maka kembali ke fungsi mnm.
17. Jika tidak maka ke kondisi selanjutnya. Bertemu kondisi minum==1.
18. Jika benar maka tampilkan Mango Smoothie dengan harga 10000.
19. Jika tidak maka bertemu kondisi selanjutnya.
20. Penghitungan kondisi dilakukan sampai makan==10.
21. Memanggil loading();
22. Memanggil head();
23. Tampilkan nama pelanggan, nomor meja, nama makanan, jumlah yang dipesan, harga
satuan makanan, nama minuman, jumlah yang dipesan, nama makanan.
24. Memproses total=(jum_makan*harga1)+(jum_minum*harga2);
25. Tampilkan total.
26. Masukkan variabel bayar.
27. Jika memenuhi kondisi bayar<total maka menampilkan Maaf, Uang Anda Kurang!!!.
28. Lalu kembali ke fungsi bayar.
29. Jika tidak maka memproses kembalian=bayar-total.
30. Tampilkan kembalian.
31. Tampilkan pernyataan Terima Kasih Atas Kunjungannya, (nama pelanggan).
32. Memasukkan variabel pilihan2.
33. Jika memilih y akan ke tampilan menu makanan dan minuman.
34. Jika memilih n maka ke tampilan awal pemesanan nomor meja.
35. Tidak salah maka akan menampilkan Inputkan Pilihan dengan Benar!!!.
36. Selesai.
4.2.2. Sintax Program
#include <iostream.h>
#include <conio.h>
#include <stdio.h>
#include <windows.h>
void head(){
cout<<endl<<endl<<endl;
cout<<"-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-
*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-
*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-
*-"<<endl<<endl;
cout<<"\t\t\t\t\t\t\t\tB O O M B A Y A R E S T O"<<endl;
cout<<"\t\t\t\t\t\t\t\tlot of foods available here "<<endl;
cout<<"\t\t\t\t\t\t\t\t\tsooooo Grab it Fast!!!"<<endl<<endl;
cout<<"-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-
*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-
*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-
*-"<<endl<<endl;
}
int loading()
{
system("color 30");
cout<<endl<<endl<<endl<<endl<<endl<<endl<<endl<<endl<<endl<<e
ndl<<endl<<endl<<endl<<endl;
cout<<"\n\n\n\t\t\t\t\t\t\t\t\t Mohon
Tunggu..."<<endl<<endl<<endl;
char a=177, b=219;
cout<<"\t\t\t\t\t\t\t\t\t";
for (int i=0;i<=25;i++)
cout<<a;
cout<<"\r";
cout<<"\t\t\t\t\t\t\t\t\t";
for (int i=0;i<=25;i++)
{
cout<<b;
for (int j=0;j<=1e7;j++); //You can also use sleep
function instead of for loop
}
}
int text(){
//deklarasi string x
char x[]="S E L A M A T D A T A N G di B O O M B A Y A R E
S T O";
//deklarasi variabel bertipe integer
int a,b,i,n;
//menghitung panjang string x
n=strlen(x);
int main()
{
char *makanan, *minuman, pilihan2, pelanggan[7];
float harga1, harga2, bayar, kembalian, total, jum_makan,
jum_minum;
int meja, makan, minum;
awal:
system("cls");
system("color 03");
cout<<endl<<endl<<endl;
cout<<" S-S-S S-
S-S-S-S-S-S-S S-S-S-S-S-S-S-S"<<endl;
Sleep(200);
system("color 30");
cout<<" S-S-S-S S-S-
S-S-S-S-S-S-S-S-S-S-S-S-S-S-S-S"<<endl;
Sleep(210);
system("color 03");
cout<<" S-S-S-S S-S-
S-S-S-S-S-S-S-S-S-S-S-S-S-S-S-S"<<endl;
Sleep(220);
system("color 30");
cout<<" S-S-S-S S-S-
S-S-S-S-S-S-S-S-S-S-S-S-S-S-S-S"<<endl;
Sleep(230);
system("color 03");
cout<<" S-S-S-S S-S-
S-S S-S-S-S S-S-S-S"<<endl;
Sleep(240);
system("color 30");
cout<<" S-S-S-S S-S-
S-S S-S-S-S S-S-S-S"<<endl;
Sleep(250);
system("color 03");
cout<<" S-S-S-S S-S-
S-S S-S-S-S S-S-S-S"<<endl;
Sleep(260);
system("color 30");
cout<<" S-S-S-S S-S-
S-S S-S-S-S S-S-S-S"<<endl;
Sleep(270);
system("color 03");
cout<<" S-S-S-S S-S-
S-S S-S-S-S S-S-S-S"<<endl;
Sleep(280);
system("color 30");
cout<<" S-S-S-S S-S-
S-S S-S-S-S S-S-S-S"<<endl;
Sleep(290);
system("color 03");
cout<<" S-S-S-S-S-S-S-S-S-S-
S-S S-S-S-S S-S-S-S"<<endl;
Sleep(300);
system("color 30");
cout<<" S-S-S-S-S-S-S-S-S-S-
S-S S-S-S-S S-S-S-S"<<endl;
Sleep(310);
system("color 03");
cout<<" S-S-S-S-S-S-S-S-S-
S-S S-S-S-S S-S-S-S"<<endl;
Sleep(320);
system("color 30");
cout<<" S-S-S-S-S-S-S-S-S-
S S-S-S S-S-S"<<endl<<endl;
Sleep(330);
system("color 03");
cout << endl << endl <<endl;
cout<<"\t\t\t\t\t\t\t";
text();
cout<<endl<<endl<<endl<<endl;
cout<<"\t\t\t\t\t\t\tNama Pelanggan : ";
cin >> pelanggan;
cout<<"\t\t\t\t\t\t\tNomor Meja (1..20) : ";
cin>>meja;
cout<<endl<<endl;
if(meja>20){
goto awal;
}
cout<<endl<<endl<<endl<<endl<<endl;
system("cls");
loading();
mkn:
system("cls");
menu:
head();
system("color 03");
cout<<endl<<endl<<endl;
cout <<
"\t\t\t\t\t\t-----------------------------------------------------
----\n";
cout << "\t\t\t\t\t\t|Pilih| MENU MAKANAN |
HARGA |\n";
cout <<
"\t\t\t\t\t\t-----------------------------------------------------
----\n";
cout << "\t\t\t\t\t\t| 1 | Nasi Goreng | RP.
20.000 |\n";
cout << "\t\t\t\t\t\t| 2 | Mie Ayam | Rp.
17.500 |\n";
cout << "\t\t\t\t\t\t| 3 | Sate kambing | RP.
30.000 |\n";
cout << "\t\t\t\t\t\t| 4 | Sup Udon | Rp.
20.000 |\n";
cout << "\t\t\t\t\t\t| 5 | Sushi | RP.
30.000 |\n";
cout << "\t\t\t\t\t\t| 6 | Yakiniku | RP.
28.000 |\n";
cout << "\t\t\t\t\t\t| 7 | Rawon | RP.
15.000 |\n";
cout << "\t\t\t\t\t\t| 8 | Kimbab | RP.
15.000 |\n";
cout << "\t\t\t\t\t\t| 9 | Ramen | RP.
18.000 |\n";
cout << "\t\t\t\t\t\t| 10 | Tteopeokki | RP.
25.000 |\n";
cout << "\t\t\t\t\t\t| 11 | Banana Split | RP.
10.000 |\n";
cout << "\t\t\t\t\t\t| 12 | Bulgogi | RP.
24.500 |\n";
cout <<
"\t\t\t\t\t\t-----------------------------------------------------
----\n\n";
cout << "\t\t\t\t\t\tPilih makanan yang akan dipesan (1...10)
: ";
cin >> makan;
cout << "\t\t\t\t\t\tJumlah yang dipesan : ";
cin >> jum_makan;
if(makan>12){
goto mkn;
}
else if (makan==1)
{
makanan="Nasi Goreng";
harga1=20000;
}
else if (makan==2)
{
makanan="Mie Ayam";
harga1=17000;
}
else if (makan==3)
{
makanan="Sate Kambing";
harga1=30000;
}
else if (makan==4)
{
makanan="Sup Udon";
harga1=20000;
}
else if (makan==5)
{
makanan="Sushi";
harga1=30000;
}
else if (makan==6)
{
makanan="Yakiniku";
harga1=28000;
}
else if (makan==7)
{
makanan="Rawon";
harga1=15000;
}
else if (makan==8)
{
makanan="Kimbab";
harga1=18000;
}
else if (makan==9)
{
makanan="Ramen";
harga1=25000;
}
else if (makan==10)
{
makanan="Tteopeokki";
harga1=30000;
}
else if (makan==11)
{
makanan="Banana Split";
harga1=10000;
}
else if (makan==12)
{
makanan="Bulgogi";
harga1=24500;
}
mnm:
system("cls");
head();
cout<<endl<<endl<<endl;
cout <<
"\t\t\t\t\t\t-----------------------------------------------------
----\n";
cout << "\t\t\t\t\t\t|Pilih| MENU MINUMAN |
HARGA |\n";
cout <<
"\t\t\t\t\t\t-----------------------------------------------------
----\n";
cout << "\t\t\t\t\t\t| 1 | Strawberry Smoothie |
RP. 11.000 |\n";
cout << "\t\t\t\t\t\t| 2 | Mango Smoothie | Rp.
10.000 |\n";
cout << "\t\t\t\t\t\t| 3 | Caramel Macchiato | RP.
11.000 |\n";
cout << "\t\t\t\t\t\t| 4 | Vanilla Macchiato | Rp.
9.000 |\n";
cout << "\t\t\t\t\t\t| 5 | Vanilla Tea | RP.
9.000 |\n";
cout << "\t\t\t\t\t\t| 6 | Green Tea | RP.
12.000 |\n";
cout << "\t\t\t\t\t\t| 7 | Chocolate Milkshake |
RP. 11.500 |\n";
cout << "\t\t\t\t\t\t| 8 | Fresh Soya Milk | RP.
8.000 |\n";
cout << "\t\t\t\t\t\t| 9 | Hot Milk Chocolate | RP.
8.000 |\n";
cout << "\t\t\t\t\t\t| 10 | Matcha Green Tea Latte | RP.
13.000 |\n";
cout <<
"\t\t\t\t\t\t-----------------------------------------------------
----\n\n";
cout << "\t\t\t\t\t\tPilih minuman yang akan dipesan (1...10)
: ";
cin >> minum;
cout << "\t\t\t\t\t\tJumlah yang dipesan : ";
cin >> jum_minum;
if(minum>10){
goto mnm;
}
else if (minum==1)
{
minuman="Strawberry Smoothie";
harga2=11000;
}
else if (minum==2)
{
minuman="Mango Smoothie";
harga2=10000;
}
else if (minum==3)
{
minuman="Caramel Macchiato";
harga2=11000;
}
else if (minum==4)
{
minuman="Vanilla Macchiato";
harga2=9000;
}
else if (minum==5)
{
minuman="Vanilla Tea";
harga2=9000;
}
else if (minum==6)
{
minuman="Green Tea";
harga2=12000;
}
else if (minum==7)
{
minuman="Chocolate Milkshake";
harga2=11500;
}
else if (minum==8)
{
minuman="Fresh Soya Milk";
harga2=8000;
}
else if (minum==9)
{
minuman="Hot Milk Chocolate";
harga2=8000;
}
else if (minum==10)
{
minuman="Matcha Green Tea Latte";
harga2=13000;
}
system("cls");
loading();
bayar:
system("cls");
head();
system("color 03");
cout << "Nama Pelanggan : "<<pelanggan<<endl;
cout << "Nomor Meja : "<<meja<<endl;
cout <<
"_________________________________________________________________
__________________________________________________________________
______________________________________"<<endl<<endl;
cout << "Makanan"<<endl;
cout << "\tNama Makanan : "<<makanan<<endl;
cout << "\tJumlah Yang Dipesan : "<<jum_makan<<endl;
cout << "\tHarga Satuan Makanan : Rp.
"<<harga1<<endl<<endl;
cout << "Minuman"<<endl;
cout << "\tNama Minuman : "<<minuman<<endl;
cout << "\tJumlah Yang Dipesan : "<<jum_minum<<endl;
cout << "\tHarga Satuan Minuman : Rp. "<<harga2<<endl;
cout <<
"_________________________________________________________________
__________________________________________________________________
______________________________________"<<endl<<endl;
total=(jum_makan*harga1)+(jum_minum*harga2);
switch(pilihan2)
{
case 'Y':
case 'y' :
goto menu;
break;
case'N':
case 'n' :
cout << endl;
cout << endl;
goto awal;
break;
default:
cout << "Inputkan Pilihan dengan Benar !!!";
getche();
}
return 0;
}
getch();
}