c# double数组有2个数 与传递过来的一个 double数 比较后 (元素值都不能为0)返回最大和最小值数组
时间: 2024-11-04 10:14:04 浏览: 36
当你有一个包含两个double数值的数组和一个单独的double数时,你可以创建一个函数来找出数组中的最大值和最小值,同时确保它们不为0。这里是一个简单的示例:
```csharp
public static (double Min, double Max) GetMinMax(double[] array, double value)
{
if (array == null || array.Length < 2)
{
throw new ArgumentException("Array must contain at least two non-zero values.");
}
double min = Math.Min(array[0], value);
double max = Math.Max(array[0], value);
for (int i = 1; i < array.Length; i++)
{
if (array[i] != 0 && array[i] < min)
min = array[i];
if (array[i] != 0 && array[i] > max)
max = array[i];
}
return (min, max);
}
```
这个函数首先检查数组是否至少有两个非零值。然后,用第一个元素和传入的value初始化min和max。接着遍历数组,如果遇到比当前min或max更小或更大的非零值,就更新相应的变量。
使用这个函数的方式如下:
```csharp
double[] myArray = { 5.0, 10.0 };
double singleValue = 7.5;
var result = GetMinMax(myArray, singleValue);
Console.WriteLine($"Minimum: {result.Min}, Maximum: {result.Max}");
```
阅读全文