題目敘述
本題採EOF方式收資料,每筆資料會有兩個字串,分別代表「紫」和「靈夢」所出的拳,當收到Game Over的時候停止收資料,並且輸出誰贏得場次比較多,如果紫勝利則輸出「螢火的蹤跡」,反之則輸出「悲慘的籌措起香油錢」。每一次收資料也需輸出這一局是誰勝利。
範例輸入 #1
Scissors Stone
Paper Stone
Paper Stone
Scissors Paper
Game Over
範例輸出 #1
靈夢獲勝
紫獲勝
紫獲勝
紫獲勝
螢火的蹤跡
解題思路
將某一個人的勝利條件設為if,else就會是另外一個人勝利。
解題程式碼如下 (僅供參考):
#include <iostream>
using namespace std;
int main() {
string purple, dream;
int P = 0, D = 0;
while (cin >> purple >> dream && purple != "Game")
{
if ((purple == "Scissors" && dream == "Stone") || (purple == "Stone" && dream == "Paper") || (purple == "Paper" && dream == "Scissors"))
{
D++;
cout << "靈夢獲勝\n";
}
else
{
P++;
cout << "紫獲勝\n";
}
}
if (P > D) cout << "螢火的蹤跡\n";
else cout << "悲慘的籌措起香油錢\n";
}
留言
張貼留言