如何把for循环的所有结果加起来
本文关键字:结果 起来 for 循环 | 更新日期: 2023-09-27 18:13:03
static void Main(string[] args)
{
int five = 5;
int sum = 0;
for (int i = 0; i < 1000; i++)
{
if (i % five == 0)
{
Console.WriteLine(i);
}
}
}
这只是打印出所有小于1000的5的倍数。
有没有办法把for循环的所有结果加起来?
"add up"是什么意思?您可以将它们添加到一个集合中,如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);
如果你想要得到所有倍数为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);
}
using System.Linq;
var sumOfFives = Enumerable
.Range(0, 1000)
.Where(i => i % 5 == 0)
.Sum();