Board logo

標題: 【課堂練習】智慧找零系統 [打印本頁]

作者: 陳育霖    時間: 2023-7-2 19:38     標題: 【課堂練習】智慧找零系統

設計一個購物軟體,讓使用者可以選擇想買的物品(可重複購買),並完成結帳和找零的功能
注意: 只會輸入1、2、3、4,其餘情況皆不會發生,且付款金額不會小於商品價格,不用考慮剛好及不足的問題。

[attach]15940[/attach]

[attach]15939[/attach]

本帖隱藏的內容需要回復才可以瀏覽

作者: 陳品諺    時間: 2023-7-4 17:08

  1. #include<iostream>
  2. #include<cstdlib>
  3. using namespace std;
  4. int main()
  5. {
  6.     int number, total=0, a, b;
  7.     while(true)
  8.     {
  9.         cout<<"請輸入要購買的物品 (1)蘋果18元 (2)芒果56元 (3)西瓜250元 (4)結帳: ";
  10.         cin>>number;
  11.         switch(number)
  12.         {
  13.             case 1:
  14.                 total=total+18;
  15.                 cout<<"目前: "<<total<<"元"<<endl<<endl;
  16.                 break;
  17.             case 2:
  18.                 total=total+56;
  19.                 cout<<"目前: "<<total<<"元"<<endl<<endl;
  20.                 break;
  21.             case 3:
  22.                 total=total+250;
  23.                 cout<<"目前: "<<total<<"元"<<endl<<endl;
  24.                 break;
  25.             case 4:
  26.                 cout<<"目前: "<<total<<"元"<<endl;
  27.                 cout<<"付款: ";
  28.                 cin>>a;
  29.                 b=a-total;
  30.                 total=0;
  31.                 cout<<"需找"<<b<<"元"<<endl<<endl;
  32.                 if(b >= 500)
  33.                 {
  34.                     cout<<"五百元"<<b/500<<"張"<<endl;
  35.                     b=b%500;
  36.                 }
  37.                 if(b >= 100)
  38.                 {
  39.                     cout<<"一百元"<<b/100<<"張"<<endl;
  40.                     b=b%100;
  41.                 }
  42.                 if(b >= 50)
  43.                 {
  44.                     cout<<"五十元"<<b/50<<"枚"<<endl;
  45.                     b=b%50;
  46.                 }
  47.                 if(b >= 10)
  48.                 {
  49.                     cout<<"十元"<<b/10<<"枚"<<endl;
  50.                     b=b%10;
  51.                 }
  52.                 if(b >= 1)
  53.                 {
  54.                     cout<<"一元"<<b<<"枚"<<endl;
  55.                 }
  56.                 cout<<endl;
  57.         }
  58.     }
  59.     system("pause");
  60.     return 0;
  61. }
複製代碼

作者: 盧承新    時間: 2023-12-6 18:07

  1. #include<iostream>
  2. #include<cstdlib>
  3. using namespace std;
  4. int main()
  5. {
  6.     int a,b=0,c,d;
  7.     re:
  8.     cout<<"請輸入要買的商品(1)蘋果18元(2)芒果56元(3)西瓜250元(4)結帳: ";
  9.     cin>>a;
  10.     switch(a)
  11.     {
  12.         case 1:
  13.             b=b+18;
  14.             cout<<"目前: "<<b<<"元\n\n";
  15.             break;
  16.         case 2:
  17.             b=b+56;
  18.             cout<<"目前: "<<b<<"元\n\n";
  19.             break;                 
  20.         case 3:
  21.             b=b+250;
  22.             cout<<"目前: "<<b<<"元\n\n";
  23.             break;
  24.         case 4:
  25.             cout<<"目前: "<<b<<"元\n";
  26.             cout<<"付款: ";
  27.             cin>>c;
  28.             d=c-b;
  29.             cout<<"需找"<<d<<"元\n\n";
  30.             if(d/500>0)
  31.             {
  32.                 cout<<"500元"<<d/500<<"張\n";
  33.                 d=d%500;
  34.             }
  35.             if(d/100>0)
  36.             {
  37.                 cout<<"100元"<<d/100<<"張\n";
  38.                 d=d%100;         
  39.             }
  40.             if(d/50>0)
  41.             {
  42.                 cout<<"50元"<<d/50<<"枚\n";
  43.                 d=d%50;         
  44.             }
  45.             if(d/10>0)
  46.             {
  47.                 cout<<"10元"<<d/10<<"枚\n";
  48.                 d=d%10;         
  49.             }
  50.             if(d/5>0)
  51.             {
  52.                 cout<<"5元"<<d/5<<"枚\n";
  53.                 d=d%5;         
  54.             }
  55.             if(d>0)
  56.             {
  57.                 cout<<"1元"<<"枚\n";      
  58.             }
  59.             b=0;
  60.             cout<<endl;
  61.             break;         
  62.             
  63.     }
  64.    
  65.    
  66.     goto re;
  67.    
  68.     system("pause");
  69.     return 0;
  70. }
複製代碼





歡迎光臨 種子論壇 | 高雄市資訊培育協會學員討論區 (http://istak.org.tw/seed/) Powered by Discuz! 7.2