劊子手遊戲
https://vjudge.net/problem/UVA-489
題目大意:計算機給一個單詞你猜,每次可以猜一個字母,如果單詞裡有那個字母,那這個單詞裡的所有字母都會顯示出來,如果沒有這個字母就說明猜錯了,錯誤次數只有7次,你的任務是編寫一個“裁判”程式,出入單詞和玩家的猜測,判斷玩家贏了(You win.),還是輸了(You lose.),還是放棄(You chickened out.)
思路:理解題意後發現這道題並不難,演算法設計也不復雜,只需要簡單的遞迴,題目說已經猜過的字母再猜一次也算錯,為了避免增加多一個字元陣列來標示字母時候已經被猜過,可以直接採用將已經猜過的字元改成空格;
樣例輸入:
1
cheese
chese
2
cheese
abcdefg
3
cheese
abcdefgij
-1
樣例輸出:
Round 1
You win.
Round 2
You chickened out.
Round 3
You lose.
程式碼:
#include<iostream>
#include<string.h>
using namespace std;
#define MAXN 100
char s1[MAXN], s2[MAXN];//s1計算機給的單詞,s2玩家猜的單詞
int lefts, chance;//剩下的字母個數和允許錯誤次數
int win, lose;//win=1贏,lose=1輸
void guess(char ch)
{
int bad = 1;
for (int i = 0; i<strlen(s1); i++)
{
if (ch == s1[i])
{
lefts--;
s1[i] = ' ';//把已經猜過的字母給成空格;
bad = 0;
}
}
if (bad) chance--;//如果沒有猜對
if (!chance) lose = 1;//錯誤次數用完
if (!lefts) win = 1;//猜出了計算機給單詞
return;
}
int main()
{
int n;
while (cin >> n&&n != -1)
{
cin >> s1;
cin >> s2;
cout << "Round" << ' ' << n << endl;
win = lose = 0;
lefts = strlen(s1);//字串長度
chance = 7;
for (int i = 0; i<strlen(s2); i++)
{
guess(s2[i]);//每猜一個字母都進行判斷
if (win || lose)
break;
}
if (win) cout << "You win." << endl;
else if (lose) cout << "You lose." << endl;
else
cout << "You chickened out." << endl;
}
return 0;
}
相關文章
- 遊戲名人堂:“電子遊戲教父”席德·梅爾遊戲
- 讓玩家愛不釋手,電子遊戲到底何魔力(上):內部樂趣要素分析遊戲
- 【Demo見真章】基於HarmonyOS手機實現五子棋對戰小遊戲遊戲
- 電子遊戲與女性主義,對電子遊戲中的性別歧視說NO遊戲
- 從電子遊戲到DevOps遊戲dev
- 五子棋遊戲(Java)遊戲Java
- 遊戲學 | 玩電子遊戲是浪費時間?遊戲
- 為電子遊戲添“彩” ——色彩原理在電子遊戲中的應用與發展遊戲
- 電子遊戲文化是如何形成的?遊戲
- 食物在電子遊戲中的妙用遊戲
- JS之五子棋遊戲JS遊戲
- 如何防止兒子沉迷電腦遊戲遊戲
- 雷蛇遊戲手機Razer Phone 2:最強LCD螢幕遊戲手機遊戲
- 黑鯊遊戲手機送福利:購買黑鯊遊戲手機送手柄遊戲
- 遊戲測試員:一輩子都不想再玩遊戲了遊戲
- 不要阻止孩子玩遊戲 電子遊戲也能開發智力遊戲
- 機器人與手動等離子切割機器人
- 電子競技,不僅僅是遊戲遊戲
- 被資料“綁架”的電子遊戲遊戲
- “步行模擬”如何改變電子遊戲?遊戲
- 安卓開發 五子棋遊戲安卓遊戲
- 電子創客案例手冊 Arduino和Raspberry Pi電子製作實戰UI
- Oracle EBS R12 電子技術參考手冊 - eTRM (電子文件)Oracle
- 電子遊戲互動簡史:從“電子玩具”到“第九藝術”遊戲
- 努比亞紅魔遊戲手機評測 紅魔遊戲手機值得買嗎?遊戲
- 仿生人、電子羊、銀翼殺手 ? 物聯網
- 錘子手機Smartisan OS 1.4.0版正式釋出
- 遊戲數學建模工程手冊遊戲
- 大廠競逐遊戲手機遊戲
- canvas手寫辨色力小遊戲Canvas遊戲
- 電子遊戲的互動性研究報告遊戲
- 漫談電子遊戲中的人工智慧遊戲人工智慧
- 《煙火》:做獨立遊戲裡扔繩子的人遊戲
- Python實現三子棋小遊戲Python遊戲
- C語言五子棋小遊戲C語言遊戲
- 如何科學地遮蔽遊戲中的噴子遊戲
- 暴雪準備用AI打擊“遊戲噴子”AI遊戲
- 電子遊戲真的可以改善注意力嗎?遊戲