3

我在将数组中的元素转换为绝对值时遇到了一些问题。

Console.WriteLine("\nQ = {0}, difference = |{1} - {2}| = {3} ",
                  a + 1, store[a], store2[a], Math.Abs(store3[a]));

store3 是一个数组。我已经在我的程序中输入了一些元素。我会得到正确的答案,问题是在获得绝对值后我必须找到数组的最小值,但它返回负整数。我只想返回绝对值中最小或最小的元素。我将如何做到这一点。我希望你能理解我的问题。

4

2 回答 2

2

如果您想要“绝对值中的最小或最小元素”,请直接Min使用所需的 lambda:

store3.Min(x => Math.Abs(x));

执行

Console.WriteLine("\nQ = {0}, difference = |{1} - {2}| = {3} ",
                  a + 1, 
                  store[a], 
                  store2[a], 
                  store3.Min(x => Math.Abs(x)));
于 2016-07-16T19:59:32.437 回答
0

您可以使用 LINQ 获取 Abs 值

store3Abs = store3.Select(x => Math.Abs(x)).ToArray();

如果不需要中间的abs数组,直接取最小值即可

var min = store3.Select(x => Math.Abs(x)).Min();
于 2016-07-16T19:53:41.230 回答