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

本文关键字:添加 数字 读取 控制台 | 更新日期: 2023-09-27 18:15:15

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

例如输入可以像这样…

20 20 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);

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

为什么不在输入后立即计算每行呢?

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);