在控制台掌握头脑

时间:2017-12-01 16:02:51

标签: c# console-application

我想在控制台中制作某种策划游戏,计算机会生成一个3位数的代码,你必须猜测它。计算机还会告诉您在猜测后立即得到哪个数字。我最好怎么做?我不知道一种“切断”输入的方法,这样我就可以让计算机根据它的数字进行检查。

示例:

计算机生成随机代码:123

你猜是:321

计算机: - * - (星号表示你正确的数字)

我知道如何指出哪些数字是正确的,但我不知道如何将输入分成几部分

2 个答案:

答案 0 :(得分:1)

将计算机生成的随机数转换为字符串。无论如何,用户输入以字符串形式给出。 string类型有一个索引器,允许您访问单个字符

string s = "abc";
char a = s[0]; 
char b = s[1];
char c = s[2];

for (int i = 0; i < s.Length; i++) {
    Console.WriteLine($"s[{i}] = '{s[i]}'");
}

您将char文字写为

char ch = 'x';

使用单引号。

示例:

string userInput = Console.ReadLine();
int code = SomehowGenerateRandomCode();
string codeString = code.ToString();

// Let's assume that both numbers have 3 digits.
for (int i = 0; i < 3; i++) {
    if(userInput[i] == codeString[i]) {
        // digits are equal
    } else {
        // digits are different
    }
}

答案 1 :(得分:0)

要将int拆分为其数字,您可以转换为字符串,如:

int i = 123;
string myInt = i.ToString();
List<int>  digits =new List<int>();

foreach (char c in myInt)
{
   digits.Add(int.Parse(c.ToString());
}