Удалить в упорядоченном по убыванию массиве числа меньшие или равные среднему арифметическому элементов массив - C#
Формулировка задачи:
Удалить в упорядоченном по убыванию массиве числа меньшие или равные среднему арифметическому элементов массива.Не знаю как найти среднее арифметическое число и удалить
int n = Convert.ToInt32(Console.ReadLine());
int[] mas = new int[n];
Random a = new Random();
int i, j, k = 0, max;
int b = n;
for (i = 0; i < n; i++)
mas[i] = a.Next(0, 40);
for (i = 0; i < n; i++)
Console.Write("{0,4:0.#}", mas[i]);
Console.WriteLine();
max=mas[0];
for (i = 0; i < n-1; i++)
{
for (j = i+1; j < n ; j++)
{
if (mas[i] < mas[j])
{
k = mas[i];
mas[i] = mas[j];
mas[j] = k;
}
}
}
for (i = 0; i < n; i++)
Console.Write("{0,4:0.#}", mas[i]);
Console.ReadKey();Решение задачи: «Удалить в упорядоченном по убыванию массиве числа меньшие или равные среднему арифметическому элементов массив»
textual
Листинг программы
using System;
namespace ConsoleApplication2
{
internal class Program
{
private static void Main(string[] args)
{
Console.Write("Count:");
int count = Convert.ToInt32(Console.ReadLine());
var arr = new int[count];
var rnd = new Random();
double summ = 0,avarage;
for (int i = 0; i < count; i++)
{
arr[i] = rnd.Next(0, 40);
summ += arr[i];
}
Console.WriteLine(string.Join(" ",arr));
Console.WriteLine("Sum {0}",summ);
Console.WriteLine("Avarage:{0:f1}",avarage=summ/arr.Length);
for (int i = 0; i < count - 1; i++)
{
for (int j = i + 1; j < count; j++)
{
if (arr[i] < arr[j])
{
int k = arr[i];
arr[i] = arr[j];
arr[j] = k;
}
}
}
int index= Array.FindIndex(arr, e =>e<=avarage);
Array.Resize(ref arr,index);
Console.WriteLine(string.Join(" ",arr));
}
}
}