【发布时间】:2017-01-31 09:53:04
【问题描述】:
我有一个字符串numbers,其中包含13 数字,例如:
string numbers = "01234567890123456781";
我必须将它们相乘:
0 * 1 * 2 * 3 * ... * 7 * 8 * 1
我有一个添加数字在一起的解决方案:
0 + 1 + 2 + 3 + ... + 7 + 8 + 1
我将number 字符串转换为List<int> numb,然后在 Linq Sum() 方法的帮助下对列表中的项目求和:
string numbers = "01234567890123456781";
List<int> numb = new List<int>();
for (int i = 0; i < numbers.Length; i++)
{
int num = int.Parse(numbers[i].ToString());
numb.Add(num);
}
for (int b = 0; b <numb.Count()-12; b++)
{
var x = numb.Skip(b).Take(13);
int a = x.Sum(); // <- it's easy to sum, but what shall I do to multiply?
Console.WriteLine(a);
}
但是,Linq 没有任何Mult() 或类似的方法,那么我该怎么做才能将这些项目相乘?
【问题讨论】:
-
您有问题吗?
-
嗨。欢迎来到 SO。请参阅我们关于提问和如何正确表达问题的指南 (stackoverflow.com/help/how-to-ask)。另外,我相信您的问题已经得到解答。
-
@Sam:我已经编辑了你的问题;下次,请在描述预期结果、您的努力和确切问题时尽可能清楚(Linq 确实有
Sum(),但在您的情况下没有.Mult()的踪迹)