检查nummer是否正确

时间:2016-11-24 18:58:40

标签: c#

我是初学者并学习如何使用c#进行编码。 我有一个问题,但我无法弄清楚。 这是我的问题。

因此用户需要填写一个号码。该数字由3部分组成。第一部分是3位数字,第2部分是7位数字,第3部分是2位数字。这是数字的样子:001-2157858-72。 我的申请必须检查我的号码是否正确,如果我将前两部分除以97而其余部分是,那么该数字是正确的 等于第3部分(0012157858/97)= 125 338,r = 74(不正确)。如果不是那么数字是错误的。

我必须使用一种方法。 这是我的代码,但我没有工作,我没有使用过一种方法。有人可以帮助我:

           string strPart1, strPart2, strPart3;
        string strNumber = "";


        Console.Write("Part 1: ");
        strPart1 = Console.ReadLine();
        Console.Write("Part 2: ");
        strPart2 = Console.ReadLine();
        Console.Write("Part 3: ");
        strPart3 = Console.ReadLine();

        strNumber = strPart1 + strPart2;


        Console.Write(strNumber);



        if (strNumber % 97 == strPart3 )
        {
            Console.Write("Corect number");
        }
        else
        {
            Console.Write("Wrong number");
        }

        Console.ReadKey();

1 个答案:

答案 0 :(得分:0)

看起来你正试图让我们做作业。

澄清;你的意思是Method。我想你想编写一个方法,将3个数字(int s)作为输入,并输出truefalse,表示数字是否正确。

要指定可以返回值的函数,返回值必须是相应的数据类型,在本例中为bool(或Boolean)。我假设您需要公开方法。

public bool NumberCorrect(int num1, int num2, int num3)
{
    // Your number logic goes here
    return (num1 + num2) % 97 == num3;
}

接下来,您可能已经看到我使用了int num1。这是因为int数据类型表示(整数)数字,整数。不要将数字设为string,而是尝试通过转换或int将其解析为TryParse() s。 这是您的代码失败的第一部分,因为它将打印" xxyyyy"而不是x和y的总和。

int number1, number2, number3;
bool ParseSuccess = System.Int32.TryParse(strPart1, number1);
//The line above will try to cast strPart1 to number 1 (as a number), and if it fails
//ParseSuccess will be false.

如果您根据需要设置了所有内容,请致电

bool correct = NumberCorrect(number1, number2, number3);
Console.WriteLine(correct)

会发出想要的结果,而你使用的方法