Board logo

標題: 電費計算機 (二) [打印本頁]

作者: tonyh    時間: 2014-5-10 16:58     標題: 電費計算機 (二)

本帖最後由 tonyh 於 2014-5-10 17:44 編輯

針對月份判斷的部分, 以 switch...case 語法改寫.
  1. #include<iostream>
  2. #include<cstdlib>
  3. using namespace std;
  4. int main()
  5. {
  6.    re:
  7.    system("cls");
  8.    int degree,month,money;
  9.    cout<<"*** 電費計算機 ***"<<endl<<endl;
  10.    cout<<"請輸入月份: ";
  11.    cin>>month;
  12.    switch(month)
  13.    {
  14.         case 6:
  15.         case 7:
  16.         case 8:
  17.         case 9:
  18.              cout<<"用電度數: ";
  19.              cin>>degree;
  20.              if(degree>0 && degree<=120)
  21.              {
  22.                  money=2.1*degree;
  23.              }else if(degree>120 && degree<=330)
  24.              {
  25.                  money=2.1*120+3.02*(degree-120);  
  26.              }else if(degree>330 && degree<=500)
  27.              {
  28.                  money=2.1*120+3.02*(330-120)+4.39*(degree-330);  
  29.              }else if(degree>500 && degree<=700)
  30.              {
  31.                  money=2.1*120+3.02*(330-120)+4.39*(500-330)+4.97*(degree-500);   
  32.              }else if(degree>700)
  33.              {
  34.                  money=2.1*120+3.02*(330-120)+4.39*(500-330)+4.97*(700-500)+5.63*(degree-700);      
  35.              }else
  36.              {
  37.                  cout<<"用電度數輸入錯誤!"<<endl;
  38.                  system("pause");
  39.                  goto re;
  40.              }
  41.              break;
  42.         case 10:
  43.         case 11:
  44.         case 12:
  45.         case 1:
  46.         case 2:
  47.         case 3:
  48.         case 4:
  49.         case 5:
  50.              cout<<"用電度數: ";
  51.              cin>>degree;
  52.              if(degree>0 && degree<=120)
  53.              {
  54.                  money=2.1*degree;
  55.              }else if(degree>120 && degree<=330)
  56.              {
  57.                  money=2.1*120+2.68*(degree-120);  
  58.              }else if(degree>330 && degree<=500)
  59.              {
  60.                  money=2.1*120+2.68*(330-120)+3.61*(degree-330);  
  61.              }else if(degree>500 && degree<=700)
  62.              {
  63.                  money=2.1*120+2.68*(330-120)+3.61*(500-330)+4.01*(degree-500);   
  64.              }else if(degree>700)
  65.              {
  66.                  money=2.1*120+2.68*(330-120)+3.61*(500-330)+4.01*(700-500)+4.5*(degree-700);      
  67.              }else
  68.              {
  69.                  cout<<"用電度數輸入錯誤!"<<endl;
  70.                  system("pause");
  71.                  goto re;
  72.              }         
  73.              break;
  74.         default:
  75.              cout<<"月份輸入錯誤!"<<endl;
  76.              system("pause");
  77.              goto re;     
  78.    }
  79.    cout<<endl<<"您要繳交的電費共 "<<money<<"元!"<<endl;  
  80.    system("pause");
  81.    return 0;   
  82. }
複製代碼

作者: 張峻瑋    時間: 2014-5-10 17:14

  1. #include <iostream>
  2. #include <cstdlib>
  3. using namespace std;

  4. int main()
  5. {
  6.     re:
  7.     int month,a,b;
  8.     system("cls");
  9.     cout<<"***天才電費計算機***"<<endl<<endl;
  10.     cout<<"請輸入月份: ";
  11.     cin>>month;
  12.     switch(month)
  13.     {
  14.         case 6:
  15.         case 7:
  16.         case 8:
  17.         case 9:
  18.             cout<<"用電度數: ";
  19.             cin>>a;
  20.             if(a>0 && a<=120)   
  21.                 b=2.1*a;      
  22.             else if(a>=121 && a<=330)
  23.                 b=2.1*120+3.02*(a-120);
  24.             else if(a>=331 && a<=500)
  25.                 b=2.1*120+3.02*210+4.39*(a-330);
  26.             else if(a>=501 && a<=700)
  27.                 b=2.1*120+3.02*210+4.39*170+4.97*(a-500);
  28.             else if(a>700)
  29.                 b=2.1*120+3.02*210+4.39*170+4.97*200+5.63*(a-700);   
  30.             else
  31.             {
  32.                 cout<<"用電度數輸入錯誤"<<endl;   
  33.                 system("pause");
  34.                 goto re;
  35.             }
  36.             break;
  37.         case 10:
  38.         case 11:
  39.         case 12:
  40.         case 1:
  41.         case 2:
  42.         case 3:
  43.         case 4:
  44.         case 5:     
  45.             cout<<"用電度數: ";
  46.             cin>>a;
  47.             if(a>0 && a<=120)   
  48.                 b=2.1*a;      
  49.             else if(a>=121 && a<=330)
  50.                 b=2.1*120+2.68*(a-120);
  51.             else if(a>=331 && a<=500)
  52.                 b=2.1*120+2.68*210+3.61*(a-330);
  53.             else if(a>=501 && a<=700)
  54.                 b=2.1*120+2.68*210+3.61*170+4.01*(a-500);
  55.             else if(a>700)
  56.                 b=2.1*120+2.68*210+3.61*170+4.01*200+4.5*(a-700);   
  57.             else
  58.             {   
  59.                 cout<<"用電度數輸入錯誤"<<endl;   
  60.                 system("pause");
  61.                 goto re;
  62.             }         
  63.             break;
  64.         default:
  65.         {
  66.             cout<<"月份輸入錯誤"<<endl;   
  67.             system("pause");
  68.             goto re;
  69.         }
  70.     }
  71.     cout<<"你要繳交的電費共: "<<b<<"元!"<<endl;
  72.     system("pause");
  73.     return 0;
  74. }
複製代碼

作者: 張郁庭    時間: 2014-5-10 17:48

  1. #include <iostream>
  2. #include <cstdlib>
  3. using namespace std;

  4. int main()
  5. {
  6.     re:
  7.     system("cls");
  8.     int degree, money, month;
  9.     cout<<"***小米電費計算機***"<<endl<<endl;
  10.     cout<<"請輸入月份: ";
  11.     cin>>month;
  12.     switch(month)
  13.     {
  14.         
  15.         case 6:
  16.         case 7:
  17.         case 8:
  18.         case 9:
  19.              cout<<"用電度數: ";
  20.              cin>>degree;
  21.              if(degree>0 && degree<=120)
  22.              {
  23.                  money=2.1*degree;
  24.              }else if(degree>120 && degree<=330)
  25.              {
  26.                  money=2.1*120+3.02*(degree-120);  
  27.              }else if(degree>330 && degree<=500)
  28.              {
  29.                  money=2.1*120+3.02*(330-120)+4.39*(degree-330);  
  30.              }else if(degree>500 && degree<=700)
  31.              {
  32.                  money=2.1*120+3.02*(330-120)+4.39*(500-330)+4.97*(degree-500);   
  33.              }else if(degree>700)
  34.              {
  35.                  money=2.1*120+3.02*(330-120)+4.39*(500-330)+4.97*(700-500)+5.63*(degree-700);      
  36.              }else
  37.              {
  38.                  cout<<"用電度數輸入錯誤!"<<endl;
  39.                  system("pause");
  40.                  goto re;
  41.              }
  42.              break;
  43.         case 10:
  44.         case 11:
  45.         case 12:
  46.         case 1:
  47.         case 2:
  48.         case 3:
  49.         case 4:
  50.         case 5:
  51.              cout<<"用電度數: ";
  52.              cin>>degree;
  53.              if(degree>0 && degree<=120)
  54.              {
  55.                  money=2.1*degree;
  56.              }else if(degree>120 && degree<=330)
  57.              {
  58.                  money=2.1*120+2.68*(degree-120);  
  59.              }else if(degree>330 && degree<=500)
  60.              {
  61.                  money=2.1*120+2.68*(330-120)+3.61*(degree-330);  
  62.              }else if(degree>500 && degree<=700)
  63.              {
  64.                  money=2.1*120+2.68*(330-120)+3.61*(500-330)+4.01*(degree-500);   
  65.              }else if(degree>700)
  66.              {
  67.                  money=2.1*120+2.68*(330-120)+3.61*(500-330)+4.01*(700-500)+4.5*(degree-700);      
  68.              }else
  69.              {
  70.                  cout<<"用電度數輸入錯誤!"<<endl;
  71.                  system("pause");
  72.                  goto re;
  73.              }         
  74.              break;
  75.         default:
  76.              cout<<"月份輸入錯誤!"<<endl;
  77.              system("pause");
  78.              goto re;     
  79.    }
  80.    cout<<endl<<"您要繳交的電費共 "<<money<<"元!"<<endl;  
  81.    system("pause");
  82.    return 0;   
  83. }
複製代碼

作者: 劉得旗    時間: 2014-5-10 17:48

  1. #include<iostream>
  2.     #include<cstdlib>
  3.     using namespace std;
  4.     int main()
  5.     {
  6.         int m, b, c, d;
  7.         cout<<"@@@@電費計算機####"<<endl<<endl;
  8.         cout<<"輸入月份: ";
  9.         cin>>m;
  10.         switch(m)
  11.         {
  12.           case 6:
  13.           case 7:
  14.           case 8:
  15.           case 9:
  16.          
  17.                
  18.          
  19.            cout<<"用電度數: ";
  20.            cin>>b;
  21.            if(b<=120)     
  22.            {
  23.                 d=b*2.1;                     
  24.            }
  25.            if(b>=121 && b<=330)     
  26.            {
  27.                 d=120*2.1+(b-120)*3.02;                     
  28.            }
  29.            if(b>=331 && b<=500)     
  30.            {
  31.                 d=120*2.1+210*3.02+(b-330)*4.39;                     
  32.            }
  33.            if(b>=501 && b<=700)     
  34.            {
  35.                 d=120*2.1+210*3.02+170*4.39+(b-500)*4.97;                     
  36.            }
  37.            if(b>700)  
  38.            {
  39.                 d=120*2.1+210*3.02+170*4.39+200*4.97+(b-700)*5.63;                     
  40.            }
  41.            cout<<"您的電費總共: "<<d<<"元"<<endl;
  42.         }
  43.            break;
  44.                case 10:
  45.                case 11:
  46.                case 12:
  47.                case 1:
  48.                case 2:
  49.                case 3:
  50.                case 4:
  51.                case 5:     
  52.         {
  53.            cout<<"用電度數: ";
  54.            cin>>b;
  55.            if(b<=120)     
  56.            {
  57.                 c=b*2.1;                     
  58.            }
  59.            if(b>=121 && b<=330)     
  60.            {
  61.                 c=120*2.1+(b-120)*2.68;                     
  62.            }
  63.            if(b>=331 && b<=500)     
  64.            {
  65.                 c=120*2.1+210*2.68+(b-330)*3.61;                     
  66.            }
  67.            if(b>=501 && b<=700)     
  68.            {
  69.                 c=120*2.1+210*2.68+170*3.61+(b-500)*4.01;                     
  70.            }
  71.            if(b>700)  
  72.            {
  73.                 c=120*2.1+210*2.68+170*3.61+200*4.01+(b-700)*4.5;                     
  74.            }
  75.            cout<<"您的電費共: "<<c<<"元"<<endl;
  76.            
  77.         }
  78.         system("pause");
  79.         return 0;   
  80.     }
複製代碼

作者: 張彥承    時間: 2014-5-10 17:52

  1. #include<iostream>
  2. #include<cstdlib>
  3. using namespace std;
  4. int main()
  5. {
  6.    re:
  7.    system("cls");
  8.    int degree,month,money;
  9.    cout<<"*** 電費計算機 ***"<<endl<<endl;
  10.    cout<<"請輸入月份: ";
  11.    cin>>month;
  12.    switch(month)
  13.    {
  14.       case 6:
  15.       case 7:
  16.       case 8:
  17.       case 9:                  
  18.        cout<<"用電度數: ";
  19.        cin>>degree;
  20.        if(degree>0 && degree<=120)
  21.        {
  22.            money=2.1*degree;
  23.        }else if(degree>120 && degree<=330)
  24.        {
  25.            money=2.1*120+3.02*(degree-120);  
  26.        }else if(degree>330 && degree<=500)
  27.        {
  28.            money=2.1*120+3.02*(330-120)+4.39*(degree-330);  
  29.        }else if(degree>500 && degree<=700)
  30.        {
  31.            money=2.1*120+3.02*(330-120)+4.39*(500-330)+4.97*(degree-500);   
  32.        }else if(degree>700)
  33.        {
  34.            money=2.1*120+3.02*(330-120)+4.39*(500-330)+4.97*(700-500)+5.63*(degree-700);      
  35.        }else
  36.        {
  37.            cout<<"用電度數輸入錯誤!"<<endl;
  38.            system("pause");
  39.            goto re;
  40.        }  
  41.             break;
  42.       case 10:
  43.       case 11:
  44.       case 12:
  45.       case 1:
  46.       case 2:
  47.       case 3:
  48.       case 4:
  49.       case 5:                       
  50.        cout<<"用電度數: ";

  51.        cin>>degree;

  52.        if(degree>0 && degree<=120)

  53.        {

  54.            money=2.1*degree;

  55.        }else if(degree>120 && degree<=330)

  56.        {

  57.            money=2.1*120+2.68*(degree-120);  

  58.        }else if(degree>330 && degree<=500)

  59.        {

  60.            money=2.1*120+2.68*(330-120)+3.61*(degree-330);  

  61.        }else if(degree>500 && degree<=700)

  62.        {

  63.            money=2.1*120+2.68*(330-120)+3.61*(500-330)+4.01*(degree-500);   

  64.        }else if(degree>700)

  65.        {

  66.            money=2.1*120+2.68*(330-120)+3.61*(500-330)+4.01*(700-500)+4.5*(degree-700);      
  67.        }else
  68.        {
  69.            cout<<"用電度數輸入錯誤!"<<endl;
  70.            system("pause");
  71.            goto re;
  72.        }
  73.        break;
  74.     default:
  75.        cout<<"月份輸入錯誤!"<<endl;
  76.        system("pause");
  77.        goto re;     
  78.    }
  79.    cout<<endl<<"您要繳交的電費共 "<<money<<"元!"<<endl;  
  80.    system("pause");
  81.    return 0;   
  82. }
複製代碼

作者: 周雍程    時間: 2014-5-10 17:54

  1. #include<iostream>
  2. #include<cstdlib>
  3. using namespace std;
  4. int main()
  5. {
  6.     int a, b, c, d;
  7.     cout<<"***愛地球電費計算機***"<<endl<<endl;
  8.     cout<<"請輸入月份: ";
  9.     cin>>a;
  10.     switch(a)
  11.     {
  12.       
  13.         case 6:
  14.         case 7:
  15.         case 8:
  16.         case 9:
  17.             cout<<"用電度數: ";
  18.             cin>>b;
  19.             if(b>=0 && b<=120)     
  20.             {
  21.                d=b*2.1;                     
  22.             }
  23.             if(b>=121 && b<=330)     
  24.             {
  25.                d=120*2.1+(b-120)*3.02;                     
  26.             }
  27.             if(b>=331 && b<=500)     
  28.             {
  29.                d=120*2.1+210*3.02+(b-330)*4.39;                     
  30.             }
  31.             if(b>=501 && b<=700)     
  32.             {
  33.                d=120*2.1+210*3.02+170*4.39+(b-500)*4.97;                     
  34.             }
  35.             if(b>700)  
  36.             {
  37.                d=120*2.1+210*3.02+170*4.39+200*4.97+(b-700)*5.63;                     
  38.             }
  39.             break;
  40.        case 1:
  41.        case 2:
  42.        case 3:
  43.        case 4:
  44.        case 5:     
  45.        case 10:     
  46.        case 11:
  47.        case 12:
  48.              cout<<"用電度數: ";
  49.              cin>>b;
  50.              if(b>=0 && b<=120)     
  51.              {
  52.                  d=b*2.1;                     
  53.              }
  54.              if(b>=121 && b<=330)     
  55.              {
  56.                  d=120*2.1+(b-120)*2.68;                     
  57.              }
  58.              if(b>=331 && b<=500)     
  59.              {
  60.                  d=120*2.1+210*2.68+(b-330)*3.61;                     
  61.              }
  62.              if(b>=501 && b<=700)     
  63.              {
  64.                  d=120*2.1+210*2.68+170*3.61+(b-500)*4.01;                     
  65.              }
  66.              if(b>700)  
  67.              {
  68.                  d=120*2.1+210*2.68+170*3.61+200*4.01+(b-700)*4.5;                     
  69.              }
  70.              cout<<"您要繳交的電費共: "<<d<<"元"<<endl;
  71.              break;         
  72.     default:
  73.        cout<<"輸入錯誤";
  74.     }
  75.     system("pause");
  76.     return 0;   
  77. }
複製代碼





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