如何将for循环中的所有结果相加?

时间:2015-09-17 08:35:09

标签: c# loops math for-loop

Not Found :Hello
Not Found :World!
Found :3
Not Found :+
Not Found :3.0
Not Found :=
Not Found :6.0
Not Found :true
Found :13964599874
Exception in thread "main" java.util.NoSuchElementException
    at java.util.Scanner.throwFor(Unknown Source)
    at java.util.Scanner.next(Unknown Source)
    at ScannerDemo.main(ScannerDemo.java:23)

这只是打印出5的所有倍数,小于1000。

有什么办法可以把for循环的所有结果加起来吗?

3 个答案:

答案 0 :(得分:1)

什么意思&#34;加起来&#34;?您可以将它们添加到像List<int>

这样的集合中
List<int> multpiplesOf5 = new List<int>();
for (int i = 0; i < 1000; i++)
{
    if (i % 5 == 0)
    {
        multpiplesOf5.Add(i);
    }
}

如果你想输出所有你可以循环它们:

foreach(int i in multpiplesOf5)
    Console.WriteLine(i);

或使用String.Join

string result = String.Join(Environment.NewLine, multpiplesOf5);

以下是循环的简洁LINQ版本:

List<int> multpiplesOf5 = Enumerable.Range(0, 1000).Where(i => i % 5 == 0).ToList();

如果您想要总结它们,可以使用LINQ扩展Enumerable.Sum

int sumOfAll = multpiplesOf5.Sum();

如果你想要可以被5整除的数字计数:

int count = multpiplesOf5.Count();

或没有带有单个LINQ查询的列表:

int count = Enumerable.Range(0, 1000).Count(i => i % 5 == 0);

答案 1 :(得分:0)

 using System.Linq;

 var sumOfFives = Enumerable
   .Range(0, 1000)
   .Where(i => i % 5 == 0)
   .Sum();

答案 2 :(得分:0)

如果你的意思是得到所有数字的总和为5,那么

static void Main(string[] args)
{

    int five = 5;
    int sum = 0;

    for (int i = 0;   i < 1000; i++){

        if (i % five == 0)
        {
            sum += i;
        }

    }

    Console.WriteLine(sum);
}