本帖最後由 tonyh 於 2014-2-22 16:48 編輯
新增 "1-正確無誤 2-重新選購" 的選單,
讓使用者在準備結帳時還能反悔, 譬如錢帶不夠.
確定結帳後, 銜接自動找零系統.- #include<iostream>
- #include<cstdlib>
- using namespace std;
- int main()
- {
- start:
- string name[7]={"遙控汽車","飛機模型","足球 ","拼圖 ",
- "玩具槍 ","可愛玩偶","籃球 "}; //商品名稱
- int price[7]={450,550,325,200,660,150,380}; //商品單價
- int qty[7]={0,0,0,0,0,0,0}; //購買數量
- int p,q,sum=0; //商品代碼,數量,總金額
- int option; //選擇
- int pay,money; //智慧找零系統所需變數
- cout<<"☆★☆ 智能玩具店 ☆★☆"<<endl<<endl;
- cout<<"[商品價目表]"<<endl;
- for(int i=0; i<=6; i++)
- {
- cout<<"("<<i+1<<")"<<name[i]<<"\t"<<price[i]<<"元"<<endl;
- }
- cout<<"(8)結帳"<<endl<<endl;
- re:
- cout<<"請輸入商品代碼: ";
- cin>>p;
- if(p>=1 && p<=7)
- {
- cout<<"數量: ";
- cin>>q;
- if(q>0)
- {
- sum+=price[p-1]*q; //sum=sum+price[p-1]*q
- qty[p-1]+=q; //qty[p-1]=qty[p-1]+q
- goto re;
- }else
- {
- cout<<"輸入錯誤!"<<endl;
- goto re;
- }
- }else if(p==8)
- {
- goto checkout;
- }else
- {
- cout<<"輸入錯誤!"<<endl;
- goto re;
- }
- checkout:
- cout<<endl<<"[購物清單]"<<endl;
- cout<<"-----------------------------"<<endl;
- for(int i=0; i<=6; i++)
- {
- if(qty[i]!=0) // != 不等於
- cout<<name[i]<<"\t"<<price[i]<<"元 * "<<qty[i]<<"個"<<endl;
- }
- cout<<"-----------------------------"<<endl;
- cout<<"總共 "<<sum<<"元!"<<endl<<endl;
- cout<<"1-正確無誤 2-重新選購 ";
- cin>>option;
- if(option==1)
- {
- goto pay;
- }else if(option==2)
- {
- system("cls"); //清畫面
- goto start;
- }else
- {
- cout<<"輸入錯誤!"<<endl;
- goto start;
- }
- pay:
- cout<<endl<<"請付帳: ";
- cin>>pay;
- money=pay-sum;
- if(money==0)
- {
- cout<<"您付的錢剛剛好, 謝謝惠顧!"<<endl;
- }else if(money<0)
- {
- cout<<"您付的錢不夠, 還差"<<-money<<"元!"<<endl;
- goto pay;
- }else
- {
- cout<<endl<<"找您"<<money<<"元!"<<endl;
- if(money>=500)
- {
- cout<<"五百元鈔票"<<money/500<<"張"<<endl;
- money%=500; //money=money%500;
- }
- if(money>=100)
- {
- cout<<"一百元鈔票"<<money/100<<"張"<<endl;
- money%=100;
- }
- if(money>=50)
- {
- cout<<"五十元硬幣"<<money/50<<"枚"<<endl;
- money%=50;
- }
- if(money>=10)
- {
- cout<<"十元硬幣"<<money/10<<"枚"<<endl;
- money%=10;
- }
- if(money>=5)
- {
- cout<<"五元硬幣"<<money/5<<"枚"<<endl;
- money%=5;
- }
- if(money>=1)
- {
- cout<<"一元硬幣"<<money<<"枚"<<endl;
- }
- }
- cout<<endl;
- system("pause"); //暫停
- return 0;
- }
複製代碼 |