iT邦幫忙

2026 iThome 鐵人賽

DAY 11
0

題目介紹:

今日我們要來練習製作一個可以猜數字的遊戲,內容為設定一個數,玩家在執行程式後可輸入數字,只要輸入的數字為設定的數,則顯示答對的字串,反之則會根據數字給提示。

我們將分成可無限猜的,以及有答題次數限制的,以下是製作方法


普通版(無限猜)

int secret num = 66;
int guess;
do
{
System.Console.Write(”請輸入猜測:”);
guess = System.Convert.ToInt32(System.Console.ReadLine());
if(guess>secret num)
{
System.Console.WriteLine(”小一點”);
}
else if(guess<secret num)
{
System.Console.WriteLine(”大一點”);
}
else(guess<secret num)
{
System.Console.WriteLine(”恭喜你答對了”);
}
}
while(guess≠secret num);

設定變數 secret num 為 66,變數guess。
在先執行後判斷的 do 迴圈 中,先執行設定變數guess為玩家輸入的值,如果玩家輸入大於secret num,會顯示 小一點,如果玩家輸入小於secret num,會顯示 大一點,不是上述兩個,則會顯示 恭喜你答對了。
最後 while 迴圈 判斷是玩家輸入的值不等於secret num的話,會一直執行 do 迴圈 大括弧的程式碼。


進階版 (如果玩家答三次都錯,就算輸)

int secret num = 66;
int guess;
int guess_count = 0; /玩家猜的次數
int guess_limit = 3; /玩家猜的限制次數
bool win = false; /玩家是否有贏
do
{
System.Console.Write(”請輸入猜測:”);
guess = System.Convert.ToInt32(System.Console.ReadLine());
guess_count++; /玩家每猜一次,玩家猜的次數會加一
if(guess>secret num)
{
System.Console.WriteLine(”小一點”);
}
else if(guess<secret num)
{
System.Console.WriteLine(”大一點”);
}
else(guess<secret num)
{
System.Console.WriteLine(”恭喜你答對了”);
win = true; /玩家確認贏
}
}
while(guess≠secret num && guess_count<guess_limit);
/判斷如果玩家輸入的值不等於secret num 且 玩家猜的次數小於限制猜的次數,會持續的執行 do 迴圈 大括弧的程式碼/
if( !win )
{
System.Console.WriteLine(”抱歉你輸了~”);
}
/*因為else那邊有設定猜對數字的話 win = true,所以沒有猜對且猜的次數大於三次的話算 !win(沒有獲勝),如果!win,則顯示 抱歉你輸了~ */

心得:

今天中秋節,先祝大家中秋節快樂~~
今日學習如何製作猜數字的遊戲,本次挑戰運用到之前學習的if判斷和while迴圈,可以算是一個總複習,同時學習到如何運用與組合之前的程式技巧。明天會學習到如何使用for迴圈,那我們明天見拉~


參考影片

【C#】3小時初學者教學 |Csharp | C# 教學 | C# 入門 | C++++
YouTube頻道:GrandmaCan -我阿嬤都會
影片段落: 1:48:46 ~ 1:57:23 (時間段已設定好)
Yes


上一篇
【Day10】while 迴圈
系列文
從 Hello World 學習 C#,到看懂AI生成的遊戲程式碼 共 11 篇
圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言