Рассчитать количество элементов массива, меньших некоторого числа С - C#
Формулировка задачи:
В одномерном массиве, состоящем из n действительных элементов, рассчитать:
а) количество элементов массива, меньших некоторого числа С;
б) сумму целых частей элементов массива, расположенных после последнего отрицательного элемента.
Превратить массив таким образом, чтобы сначала располагались все элементы, отличающиеся от максимального не более, чем на 20%, а потом - все остальные. Результаты всех расчетов и преобразований массива вывести на консоль
помогите написать
Решение задачи: «Рассчитать количество элементов массива, меньших некоторого числа С»
textual
Листинг программы
using System;
class Demo
{
static void Main()
{
Console.WriteLine("Введите рамерность массива: ");
int sum,n, c, count,index;
count = 0;
n = Int32.Parse(Console.ReadLine());
Console.WriteLine("Некоторо число С: ");
c = Int32.Parse(Console.ReadLine());
Random rnd = new Random();
double[] dim = new double[n];
double[] bufferdim = new double[n];
index = n + 1;
double maxdim = -100;
Console.WriteLine();
for (int i = 0; i < dim.Length; i++)
{
dim[i] = Math.Round((rnd.NextDouble() * rnd.Next(-20,100)),2);
if (dim[i] < c) count++;
if (dim[i] < 0) index = i;
if (dim[i] > maxdim) maxdim = dim[i];
Console.WriteLine("dim[{0}] равен {1} ", i, dim[i]);
}
Console.WriteLine();
Console.WriteLine("количество элементов массива, меньших некоторого числа С: " + count);
Console.WriteLine("последний отрицательный " + dim[index]);
Console.WriteLine();
sum = 0;
Console.WriteLine("Элементы массива расположенные после последнего отрицательного элемента");
for (int i = index+1; i < dim.Length; i++){
Console.WriteLine("целая часть элемента dim["+i+"] равна: "+(int)dim[i]);
sum += (int)dim[i];
}
Console.WriteLine();
Console.WriteLine("сумма целых элементов массива, после последнего отрицательного равна: "+sum);
Console.WriteLine("Максимальный элемент массива: " + maxdim);
Console.WriteLine();
count = 0;
for(int i=0;i<dim.Length;i++)
if (dim[i] <= maxdim * 0.2)
{
bufferdim[count] = dim[i];
count++;
}
for (int i = 0; i < dim.Length; i++)
if (dim[i] > maxdim * 0.2)
{
bufferdim[count] = dim[i];
count++;
}
Console.WriteLine();
dim=bufferdim;
Console.WriteLine("новый отсортированный массив");
for (int i = 0; i < bufferdim.Length; i++)
Console.WriteLine("dim[{0}] равен {1} ", i, dim[i]);
Console.ReadKey();
}
}