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

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

Написать процедуру поиска для заданного массива А(4,5), строки с наибольшим средним арифметическим значением положительных элементов. Результат поместить в одномерный массив D(5). Считаем, что хотя бы один положительный элемент в каждой строке имеется. Ребят помогите плиз написать в c sharp вот это, массив я задал а дальше не знаю как(((

Код к задаче: «Написать процедуру поиска строки с наибольшим средним арифметическим значением положительных элементов - C#»

textual
using System;
 
namespace ConsoleAppTest
{
    class Program
    {
        static void Main() {
            // наш массив 4x5
            int[,] matrix = {
                {1, -5, 3, 0, 7},
                {-2, -7, -3, 5, -10},
                {4, -8, 2, 3, -11},
                {0, 1, -17, -20, 5}
            };
 
            double max = 0; // максимальное ср. ар.
            int row = 0; // строка с макс. ср. ар.
            double current = 0;  // текущее значение
            int elements = 0;  // количество положительных элементов
            for (int i = 0; i < matrix.GetLength(0); i++) {
                elements = 0;
                current = 0d;
                for (int j = 0; j < matrix.GetLength(0); j++) {
                    if (matrix[i, j] > 0) {
                        elements++;
                        current += matrix[i, j];
                    }
                }
                current /= (double)elements;
                // если данная строка имеет ср. ар., большее, чем все предыдущие
                // сохраняем её данные
                if (current > max) {
                    max = current;
                    row = i;
                }
            }
            // Заносим результат в массив
            int[] result = new int[5];
            for (int i = 0; i < matrix.GetLength(1); i++)
                result[i] = matrix[row, i];
 
            // Вывод массива
            for (int m = 0; m < result.GetLength(0); m++)
                Console.Write("{0} ", result[m]);
            Console.WriteLine();
        }
    }
}

6   голосов, оценка 4.167 из 5


СОХРАНИТЬ ССЫЛКУ
Похожие ответы