本帖最後由 tonyh 於 2015-4-18 10:46 編輯
- C++購物系統學習單
- 一、 系統功能規劃表:
- 設計購物系統時,先將系統想要達到的功能依順序列表,再去思考設計方法
- 順序 功 能 怎麼設計
- 1 要有程式基本架構 基本程式碼,擬定出本程式主題,店家名稱:
- ****衛氏巫師法寶店****
- 2 讓使用者知道商店名稱、賣哪些商品、商品代碼、商品單價、怎様購買、有什麼優惠 ****衛氏巫師法寶店****
- cout輸出
- 速效跳課糖,米你毛毛球,無頭帽,金斯雀奶油,攜帶型沼澤,假魔杖,伸縮耳 陣列輸出
- for(int i=0; i<7; i++)
- for迴圈
- 90,80,74,3,80,1,4
- 陣列輸出
- [加隆任務]消費100加隆送假魔丈*30
- cout輸出,for迴圈計算
- 3 顯示的商品清單要排列整齊,便於閱讀 endl
- 4 讓電腦知道使用者想買的商品名稱、商品購買量 把名稱、購買量設為變數。
- 5 若使用者輸入錯誤,電腦要提醒他,並且請他重新輸入 if如果正確checkout,錯誤,不計算,顯示錯誤。
- 6 讓使用者買完了一件商品後,能繼續採購 如果輸入八才到checkout
- 7 若使用者輸入結帳代碼,則顯示出購物清單,列出使用者選購的商品名稱、商品購買量 cout<<endl<<"[魔法清單]"<<endl;
- cout<<"-----------------------------"<<endl;
- for(int i=0; i<7; i++)
- {
- if(qty[i]!=0)
- cout<<name[i]<<"\t"<<price[i]<<"加隆 * "<<qty[i]<<"個"<<endl;
- }
- cout<<"-----------------------------"<<endl;
- 8 讓使用者看完了購物清單後,還能選擇結帳付款或重新選購 cout<<"1-正確無誤 2-重新選購 ";
- cin>>option;
- if(option==1)
- {
- goto change;
- }
- else
- {
- system("cls");
- goto re2;
- }
- 9 若選擇重新選購,則一切重來 將re2:放在最上
- 10 若使用者選擇結帳付款,電腦要算出總價,並且顯示出來 cout<<"總共"<<sum<<"加隆!"<<endl<<endl;
- 11 顯示總價時,順便告知使用者是否得到優惠或贈品 if(sum >= 100)
- {
- cout<<"你消費"<<sum<<"加隆,符合滿100加隆的任務"<<endl<<endl;
- cout<<"假魔丈*30是你的了!"<<endl;
- }
- 12 顯示總價後,再接智慧找零系統 if(option==1)
- {
- goto change;
- }
- else
- {
- system("cls");
- goto re2;
- }
- change:
- cout<<endl<<"請付帳: ";
- cin>>pay;
- money=pay-sum;
- if(money==0)
- {
- cout<<"感謝光臨!"<<endl;
- }
- else if(money<0)
- {
- cout<<"快把"<<-money<<"加隆交來!"<<endl;
- goto change;
- }else
- {
- cout<<"找你"<<money<<"加隆"<<endl;
- if(money>=100)
- {
- cout<<"100加隆"<<money/100<<"枚"<<endl;
- money%=100;
- }
- if(money>=50)
- {
- cout<<"50加隆"<<money/50<<"枚"<<endl;
- money%=50;
- }
- if(money>=10)
- {
- cout<<"10加隆"<<money/10<<"枚"<<endl;
- money%=10;
- }
- if(money>0)
- {
- cout<<"1加隆"<<money<<"枚"<<endl;
- }
- }
- 二、 設定變數
- 將所有的值存在變數裡,電腦才能讀取並且計算
- 想想看:這個系統,需要設定哪些變數? 讓我們也列出變數一覽表
- 變數
- 型態 變數
- 名稱 變數內容 設定方式 讀取方式
- string name[7] 每個商品的名稱 string name[7]={"速效跳課糖 ","米你毛毛球 ","無頭帽 ","金斯雀奶油蛋糕","攜帶型沼澤 ","假魔杖 ","伸縮耳 "}; 速效跳課糖
- 米你毛毛球
- 無頭帽
- 金斯雀奶油蛋糕
- 攜帶型沼澤
- 假魔杖
- 伸縮耳
- int qty[7] 每個商品的購買數量 int qty[7]={0,0,0,0,0,0,0}; 不出現
- int price[7] 每個商品的單價 Int price[7]={90,80,74,3,80,1,4}; 90
- 80
- 74
- 3
- 80
- 1
- 4
- int p 想購買的商品代碼 cout<<"請輸入商品代碼: ";
- cin>>p; 請輸入商品代碼:
- int q 想購買的商品數量 cout<<"數量: ";
- cin>>q; 數量:
- int sum 總價 sum+=price[p-1]*q;
- qty[p-1]+=q; 之後出現
- int option 結帳或重新選購 if(option==1)
- {
- goto change;
- }
- else
- {
- system("cls");
- goto re2;
- } 1-正確無誤 2-重新選購
- int pay 要付的款項 cout<<endl<<"請付帳: ";
- cin>>pay;
- money=pay-sum; 請付帳:
- int money 要找的錢 if(money==0)
- {
- cout<<"感謝光臨!"<<endl;
- }
- else if(money<0)
- {
- cout<<"快把"<<-money<<"加隆交來!"<<endl;
- goto change;
- }else
- {
- cout<<"找你"<<money<<"加隆"<<endl;
- if(money>=100)
- {
- cout<<"100加隆"<<money/100<<"枚"<<endl;
- money%=100;
- }
- if(money>=50)
- {
- cout<<"50加隆"<<money/50<<"枚"<<endl;
- money%=50;
- }
- if(money>=10)
- {
- cout<<"10加隆"<<money/10<<"枚"<<endl;
- money%=10;
- }
- if(money>0)
- {
- cout<<"1加隆"<<money<<"枚"<<endl;
- }
- } 感謝光臨!
- 快把<<-money<<加隆交來!
- 找你<<money<<加隆
- 100加隆<<money/100<<枚
- 50加隆<<money/50<<枚
- 10加隆<<money/10<<枚
- 1加隆<<money<<枚
複製代碼 |