用C#写一个中位数平均的代码
时间: 2024-03-16 18:44:04 浏览: 61
求平均数的代码
以下是一个使用 C# 实现中位数平均的示例代码:
```csharp
public static double MedianAverage(List<double> values)
{
if (values.Count == 0)
{
throw new ArgumentException("The list cannot be empty.");
}
values.Sort();
int n = values.Count;
int m = n / 2;
double median = values[m];
if (n % 2 == 0)
{
median = (median + values[m - 1]) / 2;
}
double sum = 0;
for (int i = 0; i < n; i++)
{
sum += values[i];
}
double average = sum / n;
return (median + average) / 2;
}
```
这个函数接受一个 double 类型的 List 作为输入,首先对列表进行排序,然后计算中位数。如果列表长度为偶数,则取中间两个数的平均值作为中位数。接着,计算列表的平均值,并返回中位数和平均值的平均值作为中位数平均值。如果列表为空,则抛出 ArgumentException 异常。
阅读全文