1. 程式人生 > >【字串石頭剪刀布】c++新人教程

【字串石頭剪刀布】c++新人教程

感謝對面學長幫我修改程式裡的錯誤微笑

上題

遊戲規則:石頭打剪刀,布包石頭,剪刀剪布。 
現在,需要你寫一個程式來判斷石頭剪子布遊戲的結果。

輸入

輸入包括N+1行:
第一行是一個整數N,表示一共進行了N次遊戲。1 <= N <= 100。
接下來N行的每一行包括兩個字串,表示遊戲參與者Player1,Player2的選擇(石頭、剪子或者是布):
S1 S2
字串之間以空格隔開S1,S2只可能取值在{"Rock", "Scissors", "Paper"}(大小寫敏感)中。

輸出

輸出包括N行,每一行對應一個勝利者(Player1或者Player2),或者遊戲出現平局,則輸出Tie。

樣例輸入

3Rock ScissorsPaper PaperRock Paper

樣例輸出

Player1TiePlayer2

我的程式

/*請先了解自定義函式,字串的知識*/
#include<bits/stdc++.h>
using namespace std;
string p1,p2;//玩家猜拳的情況及結果 (字串型別不用開陣列)
string jg[100];//儲存每次的結果
int n;//猜拳次數 
bool ccjg/*猜拳結果*/(string pp1,string pp2,int i)
{
	if(pp1==pp2)
		jg[i]="Tie";
	else if(pp1=="Rock")
	{
		if(pp2=="Scissors")
		   jg[i]="Player1";
		else if(pp2=="Paper")
		   jg[i]="Player2"; 
	}
	else if(pp1=="Paper")
	{
		if(pp2=="Rock")
		   jg[i]="Player1";
		else if(pp2=="Scissors")
		   jg[i]="Player2"; 
	}
	else if(pp1=="Scissors")
	{
		if(pp2=="Rock")
		   jg[i]="Player2";
		else if(pp2=="Paper")
		   jg[i]="Player1"; 
	}
} 
//主函式 
int main()
{
	cin>>n;
	for(int i=0;i<n;i++)
	{
		cin>>p1;
		cin>>p2;
		ccjg(p1,p2,i);
	}
	for(int i=0;i<n;i++)
	{
		cout<<jg[i]<<endl;
	} 
	return 0;
}