返回列表 發帖

[作業] 秘密投票器設計 進階

本帖最後由 tonyh 於 2012-2-4 17:30 編輯

將課堂上寫的程式加以改良, 自由發揮.
  1. #include<iostream>
  2. using namespace std;
  3. int main()
  4. {
  5.      float a=0,b=0,c=0,d=0;
  6.      int vote;
  7.      int password,tryagain;
  8.      start:
  9.      cout<<"☆★☆歡迎使用秘密投票機---班長選舉☆★☆"<<endl;
  10.      cout<<"共有三位候選人 1:派大星 2:泡芙阿姨 3:皮老闆"<<endl;
  11.      cout<<"請輸入號碼以投下您神聖的一票: ";
  12.      cin>>vote;
  13.      if(vote==1)
  14.      {
  15.          a++;
  16.      }else if(vote==2)
  17.      {
  18.          b++;  
  19.      }else if(vote==3)
  20.      {
  21.          c++;  
  22.      }else
  23.      {
  24.          d++;     
  25.      }
  26.      system("cls");
  27.      cout<<"已完成投票! 請等候管理人員安排..."<<endl;  //許功蓋暫時無法顯示
  28.      password:
  29.      cout<<"管理人員請在此輸入密碼: ";
  30.      cin>>password;
  31.      if(password==123)
  32.      {
  33.           cout<<"1:繼續投票 2.公佈結果"<<endl;
  34.           cout<<"請輸入號碼以決定下一步動作: ";
  35.           cin>>tryagain;
  36.           if(tryagain==1)
  37.           {
  38.               system("cls");
  39.               goto start;
  40.           }else
  41.           {
  42.               system("cls");
  43.               goto result;     
  44.           }      
  45.          
  46.      }else
  47.      {
  48.           cout<<"輸入錯誤! 請重新輸入!"<<endl;
  49.           goto password;      
  50.      }
  51.      result:
  52.      cout<<"☆★☆投票結果☆★☆"<<endl;
  53.      cout<<"1號派大星"<<a<<"票, 2號泡芙阿姨"<<b<<"票, 3號皮老闆"<<c
  54.          <<"票, 廢票"<<d<<"張"<<endl;
  55.      cout<<"三位候選人的得票率分別為..."<<endl;
  56.      cout<<"1號派大星"<<a/(a+b+c+d)*100<<"%, 2號泡芙阿姨"<<b/(a+b+c+d)*100
  57.          <<"%, 3號皮老闆"<<c/(a+b+c+d)*100<<"%"<<endl;
  58.      if(a>b && a>c)
  59.      {
  60.           cout<<"恭喜派大星當選班長!"<<endl;
  61.      }else if(b>a && b>c)
  62.      {
  63.           cout<<"恭喜泡芙阿姨當選班長!"<<endl;
  64.      }else if(c>a && c>b)
  65.      {
  66.           cout<<"恭喜皮老闆當選班長!"<<endl;  
  67.      }else
  68.      {
  69.           cout<<"沒有候選人得到最高票數, 選舉無效!"<<endl;   
  70.      }         
  71.      system("pause");
  72.      return 0;
  73. }
複製代碼

返回列表