在不同的控制台线上读取并添加多个数字

时间:2014-07-26 22:39:26

标签: c# console

只是标准的编程实践,我试图找到一种有效的方法来获取控制台输入并将它们全部添加到多行上。

例如输入可以是这样的......

20 20 20 20 20 20

20 20 20 20 20 20

在我到达换行符之前,这不会成为问题。它变成2020年,这是不对的。

    string equation = "";
    string line = "";

    while (line != null)
    {
        line = Console.ReadLine();
        equation += line;

    }

    string[] splits = equation.Split(' ');
    int[] numbers = splits.Select(int.Parse).ToArray();
    int result = 0;
    foreach (int i in numbers)
    {
        result += i;
    }
    Console.WriteLine(result);

1 个答案:

答案 0 :(得分:1)

为什么不在输入后立即评估每一行:

int result = 0;

while (true)
{
    string line = Console.ReadLine();
    if (string.IsNullOrWhiteSpace(line))
    {
        break;
    }

    result += line.Split(new[] { ' ' }, StringSplitOptions.RemoveEmptyEntries)
                  .Select(int.Parse)
                  .Sum();
}

Console.WriteLine(result);