2016-07-16 91 views
0

我在將數組中的元素轉換爲絕對值時遇到了一些問題。如何獲得數組中每個元素的絕對值

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

store3是一個數組。我已經在我的程序中輸入了一些元素。 ,我會得到正確的答案 和問題是獲得絕對值後,我必須找到數組的最小值,但它返回負整數。我只想返回其絕對值中最小或最小的元素。我將如何做到這一點。我希望你能理解我的問題。

回答

0

您可以使用LINQ來獲取阿布斯值

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

如果您不需要中間ABS陣列,您可以如果你想「最小的剛剛獲得的最低直接

var min = store3.Select(x => Math.Abs(x)).Min(); 
+0

我將如何顯示控制檯中的最小值? – whomustnotbenamed

+0

但它只返回0 – whomustnotbenamed

+0

store3的值是什麼?如果store3的值爲0,則最小值爲0.使用Console.WriteLine方法寫入控制檯 – keyboardP

1

或者在他們的絕對值」的元素的最低,嘗試直接與Min需要拉姆達:

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))); 
相關問題