iT邦幫忙

2023 iThome 鐵人賽

DAY 18
0
自我挑戰組

突然冒出的自學計畫系列 第 18

#Day18 猜猜數字(一)

  • 分享至 

  • xImage
  •  

今天來寫簡報上的題目!
基本上就是猜數字遊戲的進化版本,我直接貼老師寫的規則:

-電腦先隨機產生一個四個位數都不同的四位數作為謎底
-最高位數字(千位數)可以是0
-謎底為0567,所猜數字為5566
-5、5、6、6均出現在謎底中,所以m等於4
-其中一個5一個6與謎底的第二與第三位數之位置與數值均相同,所以n等於2
-電腦顯示2A4B

這些就是進階的部分ㄌ
在開始處理下面那些額外的輸出之前,我先寫出一個基本的猜數字遊戲,符合前兩項並有五次機會

Random m = new Random();
int nu = m.Next(9999);
string s = nu.ToString();

while (s.Length != 4)
{
    s = "0" + s; //確保為四位數字
}

int i =0; //之後迴圈用
string a = Convert.ToString(Console.ReadLine());

while (true)
{
    if (a == s)
    {
        Console.WriteLine("You are right");
        break;
    }
    else if(i<=5)
    {
        Console.WriteLine("Try again");
        a = Convert.ToString(Console.ReadLine());
        i++;
    }
}

基本上遊戲功能就做完了,接下來是麻煩ㄉ判斷輸出部分
按照老師的規則,我必須將電腦生成的數字與玩家輸入的數字都拆成array去比對
於是我拿出了之前寫過的:
ToCharArray
int[]
以及後來查到的 string[]

好,沒一個能用,謝謝
直到今天我才知道C#的array並不像Python,一個list裡面要塞數字、字串、另一個list通通都可以
而是int[]只能是int,string[]只能是string,要轉都轉不了......
啊啊啊啊怎麼這麼難用!!!!睡覺!!!晚安!!!


上一篇
#Day17 不是,我看不懂ㄟ?
下一篇
#Day19 猜猜數字(二)
系列文
突然冒出的自學計畫30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言