请用c#解答该问题,有思路最好

打印出[100,500]以内同时满足除以7余5、除以5余3、除以3余1的这些数,并统计这些数的个数以及这些数之和。

从100到500去循环遍历,判断同时满足三个条件的就记录下来。

int count = 0;
int sum = 0;
for (int i = 100; i <= 500; i++)
{
    if ((i % 7 == 5) && (i % 5 == 3) && (i % 3 == 1))
    {
        Console.WriteLine($"{i} 满足以上条件");
        count++;
        sum += i;
    }
}
Console.WriteLine($"[100,500]内同时满足条件的数有{count}个,他们的和为{sum}");


以下是基于LINQ的实现:

var numbers = Enumerable.Range(100, 401)    // 生成100到500之间的数
    .Where(x => x % 7 == 5 && x % 5 == 3 && x % 3 == 1) // 找出满足条件的数
    .ToList();
// 输出结果
Console.WriteLine($"共找到{numbers.Count}个满足条件的数,分别为:{string.Join(",", numbers)},和为:{numbers.Sum()}");

输出结果:

共找到4个满足条件的数,分别为:103,208,313,418,和为:1042