Найти минимальный отрицательный элемент массива и вычислить среднеарифметическое положительных элементов - C#

Узнай цену своей работы

Формулировка задачи:

Дан одномерный массив, состоящий из N вещественных элементов. Заполнить массив случайными числами. Найти минимальный отрицательный элемент. Вычислить среднеарифметическое положительных элементов массива. Вывести положительные элементы на экран Примечание: Вне зависимости от условия задачи ввод данных необходимо выполнять из файла, вывод – в файл!

Решение задачи: «Найти минимальный отрицательный элемент массива и вычислить среднеарифметическое положительных элементов»

textual
Листинг программы
    class Program
    {
        static void Main(string[] args)
        {
            Random rnd = new Random();
            int n = 10;
            double[] array = new double[n];
        
            for (int i = 0; i < n; i++)  { array[i] = rnd.Next(-1000, 1001)/100.0;}
            Console.WriteLine("Массив");
            Print(array,n);
            double min = FindMin(array, 0, array.Length - 1);
            Console.WriteLine("Минимальный отрицательный элемент массива = {0}", min);
            double summ = 0;
            int m = 0;
            double[] parray = new double[n];
            for (int k = 0; k < array.Length; k++)
            {
                if (array[k] > 0)
                {
                    parray[m] = array[k];
                    m = m + 1;
                    summ += array[k];
                }
            }
            Console.WriteLine("Сумма положительных элементов массива = {0}", summ);
            Console.WriteLine("Положительные элементы массива");
            Print(parray, m);
            Console.ReadKey();
   
          }
        static void Print(double[] array ,int n)
        {
            for (int i = 0; i < n; i++)
                Console.Write(array[i] + @" ");
            Console.WriteLine();
        }
        static double FindMin(double[] arr, int left, int right)
        {
            if (right == left)
                return arr[left];
 
            int middle = (right + left) / 2;
            return Math.Min(FindMin(arr, left, middle), FindMin(arr, middle + 1, right));
        }
    }

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

7   голосов , оценка 4 из 5
Похожие ответы