Board logo

標題: 猜拳遊戲 (一) [打印本頁]

作者: tonyh    時間: 2015-11-6 20:32     標題: 猜拳遊戲 (一)

本帖最後由 tonyh 於 2015-11-6 21:16 編輯

運用產生隨機亂數的技巧, 設計一個猜拳遊戲,
使用者可以選擇出剪刀石頭或布, 電腦隨機出拳.

[attach]1453[/attach]
  1. #include<iostream>
  2. #include<cstdlib>
  3. using namespace std;
  4. int main()
  5. {
  6.     srand(time(NULL));
  7.     int player,computer;
  8.     cout<<"請出拳! (1)剪刀(2)石頭(3)布 ";
  9.     cin>>player;
  10.     computer=rand()%3+1;
  11.     cout<<"你出";
  12.     if(player==1)
  13.         cout<<"剪刀!"<<endl;
  14.     else if(player==2)
  15.         cout<<"石頭!"<<endl;
  16.     else
  17.         cout<<"布!"<<endl;
  18.     cout<<"電腦出";
  19.     if(computer==1)
  20.         cout<<"剪刀!"<<endl;
  21.     else if(computer==2)
  22.         cout<<"石頭!"<<endl;
  23.     else
  24.         cout<<"布!"<<endl;
  25.     system("pause");   
  26.     return 0;
  27. }
複製代碼

作者: 陳思惟    時間: 2015-11-6 20:47

  1. #include<iostream>
  2. #include<cstdlib>
  3. using namespace std;
  4. int main()
  5. {
  6.     re:
  7.     int player, computer;
  8.     string name[]={"剪刀","石頭","布"};
  9.     cout<<"請出拳:(1)剪刀 (2)石頭 (3)布  ";
  10.     cin>>player;
  11.     srand(time(NULL));
  12.     computer=rand()%3+1;
  13.     cout<<"你出"<<name[player-1]<<endl;
  14.     cout<<"電腦出"<<name[computer-1]<<endl;
  15.     if(computer==player)
  16.     {
  17.         cout<<"平手!"<<endl;
  18.     }
  19.     else if((player==1 && computer==3)||
  20.             (player==2 && computer==1)||
  21.             (player==3 && computer==2))
  22.     {
  23.         cout<<"你贏了"<<endl;        
  24.     }
  25.     else
  26.     {
  27.         cout<<"電腦贏了"<<endl;     
  28.     }
  29.     cout<<endl;
  30.     goto re;
  31.     system("pause");     
  32.     return 0;
  33. }
複製代碼

作者: 黃璽安    時間: 2015-11-6 20:51

  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.     start:
  11.     srand(time(NULL));   
  12.     computer=rand()%3+1;  
  13.     cout<<"請輸入你要出的拳! (1) 剪刀 (2) 石頭 (3) 布"<<endl;
  14.     cin>>player;
  15.     if(computer==1)
  16.     {
  17.           if(player==1)
  18.           {
  19.                cout<<"你出剪刀, 電腦也出剪刀!"<<endl<<"平手!";
  20.           }else if(player==2)
  21.           {
  22.                cout<<"你出石頭, 電腦出剪刀!"<<endl<<"你贏了!";
  23.           }else if(player==3)
  24.           {
  25.                cout<<"你出布, 電腦出剪刀!"<<endl<<"你輸了!";
  26.           }else
  27.           {
  28.                cout<<"輸入錯誤!";   
  29.           }
  30.     }
  31.     if(computer==2)
  32.     {
  33.           if(player==1)
  34.           {
  35.                cout<<"你出剪刀, 電腦出石頭!"<<endl<<"你輸了!";
  36.           }else if(player==2)
  37.           {
  38.                cout<<"你出石頭, 電腦也出石頭!"<<endl<<"平手!";
  39.           }else if(player==3)
  40.           {
  41.                cout<<"你出布, 電腦出石頭!"<<endl<<"你贏了!";
  42.           }else
  43.           {
  44.                cout<<"輸入錯誤!";   
  45.           }   
  46.    
  47.     }
  48.     if(computer==3)
  49.     {
  50.           if(player==1)
  51.           {
  52.                cout<<"你出剪刀, 電腦出布!"<<endl<<"你贏了!";
  53.           }else if(player==2)
  54.           {
  55.                cout<<"你出石頭, 電腦出布!"<<endl<<"你輸了!";
  56.           }else if(player==3)
  57.           {
  58.                cout<<"你出布, 電腦也出布!"<<endl<<"平手!";
  59.           }else
  60.           {
  61.                cout<<"輸入錯誤!";   
  62.           }   
  63.    
  64.     }
  65.     cout<<endl;
  66.     if(tryagain==1)
  67.     {
  68.          goto start;
  69.     }else
  70.     {
  71.          goto end;
  72.     }
  73.     end:
  74.     system("pause");
  75.     return 0;
  76. }
複製代碼

作者: 曾挺桂    時間: 2015-11-6 20:54

  1. #include<iostream>
  2. #include<cstdlib>
  3. using namespace std;
  4. int main()
  5. {
  6.     string x,n[3]={"剪刀","石頭","布"};
  7.     cout<<"請出拳! <1>剪刀 <2>石頭 <3>布"<<endl;
  8.     cin>>x;
  9.     if(x==1)
  10.     cout<<"你出剪刀"<<endl;
  11.     if(x==2)
  12.     cout<<"你出石頭"<<endl;
  13.     if(x==3)
  14.     cout<<"你出布"<<endl;
  15.     else
  16.     cout<<"1到3,你眼殘啊"<<endl;
  17.     srand(time(NULL));   
  18.     cout<<"電腦出"<<n[rand()%3+1]<<endl;;  
  19.     system("pause");   
  20.     return 0;
  21. }
複製代碼

作者: 沈子耕    時間: 2015-11-6 21:04

本帖最後由 沈子耕 於 2015-11-6 21:16 編輯
  1. #include<iostream>
  2. #include<cstdlib>
  3. using namespace std;
  4. int main(){
  5.    re:
  6.    int pla,com;
  7.    srand(time(NULL));
  8.    cout<<"請出拳! <1>剪刀 <2>石頭 <3>布 <0>不想玩了  ";
  9.    cin>>pla;
  10.    com=rand()%3+1;
  11.    if(pla==1)
  12.      cout<<"你出剪刀!"<<endl;
  13.    else if(pla==2)
  14.      cout<<"你出石頭!"<<endl;
  15.    else if(pla==3)
  16.      cout<<"你出布!"<<endl;
  17.    else if(pla==0)
  18.      goto end;
  19.    else{
  20.      cout<<"輸入錯誤"<<endl;
  21.      goto re;
  22.    }  
  23.    if(com==1)
  24.      cout<<"電腦出剪刀!"<<endl;
  25.    else if(com==2)
  26.      cout<<"電腦出石頭!"<<endl;
  27.    else if(com==3)
  28.      cout<<"電腦出布!"<<endl;
  29.    cout<<"結果: ";  
  30.    if(pla==com)
  31.      cout<<"平手"<<endl;
  32.    else if(pla==1&&com==3 || pla==2&&com==1 || pla==3&&com==2)
  33.      cout<<"恭喜您贏了"<<endl;
  34.    else if(pla==1&&com==2 || pla==2&&com==3 || pla==3&&com==1)
  35.      cout<<"恭喜電腦贏了"<<endl;
  36.    goto re;
  37.    end:
  38.    system("pause");   
  39.    return 0;
  40. }
複製代碼

作者: 陳思惟    時間: 2015-11-13 20:14

  1. #include<iostream>
  2. #include<cstdlib>
  3. using namespace std;
  4. int main()
  5. {
  6.     srand(time(NULL));
  7.     int player,computer;
  8.     cout<<"請出拳! (1)剪刀(2)石頭(3)布 ";
  9.     cin>>player;
  10.     computer=rand()%3+1;
  11.     cout<<"你出";
  12.     if(player==1)
  13.         cout<<"剪刀!"<<endl;
  14.     else if(player==2)
  15.         cout<<"石頭!"<<endl;
  16.     else
  17.         cout<<"布!"<<endl;
  18.     cout<<"電腦出";
  19.     if(computer==1)
  20.         cout<<"剪刀!"<<endl;
  21.     else if(computer==2)
  22.         cout<<"石頭!"<<endl;
  23.     else
  24.         cout<<"布!"<<endl;
  25.     system("pause");   
  26.     return 0;
  27. }
複製代碼





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