返回列表 發帖

[作業] 猜拳遊戲 進階

本帖最後由 tonyh 於 2012-1-7 16:56 編輯

將今天課堂上寫的猜拳遊戲, 加以改良,
使程式結束時, 電腦能回應玩家, 總共贏了幾次, 輸了幾次, 平手幾次.
  1. #include<iostream>  //當用到標準輸入與輸出時,需插入此標題檔  
  2. #include<cstdlib>   //當用到亂數函數時,需插入此標題檔
  3. #include<ctime>     //當用到時間函數時,需插入此標題檔
  4. using namespace std;
  5. int main()
  6. {
  7.     int computer;   //電腦出的拳
  8.     int player;     //玩家出的拳
  9.     int tryagain;   //是否再玩一次
  10.     int win=0, lose=0, draw=0;     //用來累計輸贏或平手的次數
  11.     start:
  12.     srand(time(NULL));   //設定亂數種子
  13.     computer=rand()%3+1;  //產生介於1~3的隨機亂數, 以決定電腦出的拳
  14.     cout<<"請輸入你要出的拳 1=剪刀 2=石頭 3=布"<<endl;
  15.     cin>>player;
  16.     if(computer==1)
  17.     {
  18.           if(player==1)
  19.           {
  20.                cout<<"你出剪刀, 電腦也出剪刀!"<<endl<<"平手!";
  21.                draw++;
  22.           }else if(player==2)
  23.           {
  24.                cout<<"你出石頭, 電腦出剪刀!"<<endl<<"你贏了!";
  25.                win++;
  26.           }else if(player==3)
  27.           {
  28.                cout<<"你出布, 電腦出剪刀!"<<endl<<"你輸了!";
  29.                lose++;
  30.           }else
  31.           {
  32.                cout<<"輸入錯誤!";   
  33.           }
  34.     }
  35.     if(computer==2)
  36.     {
  37.           if(player==1)
  38.           {
  39.                cout<<"你出剪刀, 電腦出石頭!"<<endl<<"你輸了!";
  40.                lose++;
  41.           }else if(player==2)
  42.           {
  43.                cout<<"你出石頭, 電腦也出石頭!"<<endl<<"平手!";
  44.                draw++;
  45.           }else if(player==3)
  46.           {
  47.                cout<<"你出布, 電腦出石頭!"<<endl<<"你贏了!";
  48.                win++;
  49.           }else
  50.           {
  51.                cout<<"輸入錯誤!";   
  52.           }   
  53.    
  54.     }
  55.     if(computer==3)
  56.     {
  57.           if(player==1)
  58.           {
  59.                cout<<"你出剪刀, 電腦出布!"<<endl<<"你贏了!";
  60.                win++;
  61.           }else if(player==2)
  62.           {
  63.                cout<<"你出石頭, 電腦出布!"<<endl<<"你輸了!";
  64.                lose++;
  65.           }else if(player==3)
  66.           {
  67.                cout<<"你出布, 電腦也出布!"<<endl<<"平手!";
  68.                draw++;
  69.           }else
  70.           {
  71.                cout<<"輸入錯誤!";   
  72.           }   
  73.    
  74.     }
  75.     cout<<endl;
  76.     cout<<"再玩一次嗎? 1=是 2=否"<<endl;
  77.     cin>>tryagain;
  78.     if(tryagain==1)
  79.     {
  80.          goto start;
  81.     }else
  82.     {
  83.          goto end;
  84.     }
  85.     end:
  86.         cout<<"總共贏了"<<win<<"次, 輸了"<<lose<<"次, 平手"<<draw<<"次!"<<endl;
  87.     system("pause");
  88.     return 0;
  89. }
複製代碼

此帖僅作者可見

TOP

此帖僅作者可見

TOP

此帖僅作者可見

TOP

此帖僅作者可見

TOP

此帖僅作者可見

TOP

返回列表