Деление строки массива на среднее арифметическое - C#

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

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

Деление на 10 элементов тех строк массива, которые содержат значение, большее общего среднего арифметического. Что-то упускаю при передаче метода
 class Program
    {
        static void dif (int g,double average,int [,]mas)
        {
            
            for (int j = 0; j < mas.GetLength(1); j++)
            {
                mas[g, j] = mas[g, j] / 10;
            }
            
        }
        static void Main(string[] args)
        {
            int[,] mas = new int[9, 9];
            double average = 0;
            Random rand = new Random();
            for (int i = 0; i < mas.GetLength(0); i++)
            {
                for (int j = 0; j < mas.GetLength(1); j++)
                {
                    mas[i, j] = rand.Next(0, 9);
                    average += mas[i, j];
                }
            }
            Console.WriteLine("среднее значение {0}",average);
 
            for (int i = 0; i < mas.GetLength(0); i++)
            {
                for (int j = 0; j < mas.GetLength(1); j++)
                {
                    if (mas[i, j] > average)
                    {
                        Console.WriteLine("изменяется строка {0}", i);
                        dif(i, average, mas);
                    }
                }
 
            }
            
            for (int i = 0; i < mas.GetLength(0); i++)
            {
                for (int j = 0; j < mas.GetLength(1); j++)
                {
                    Console.Write(mas[i, j]);
                }
                Console.WriteLine();
            }
        }

Решение задачи: «Деление строки массива на среднее арифметическое»

textual
Листинг программы
 class Program
    {
        static void dif (int g,double average,int [,]mas)
        {
            
            for (int j = 0; j < mas.GetLength(1); j++)
            {
                if (mas[g,j]>average)
                mas[g, j] = mas[g, j] / 10;
            }
            
        }
        static void Main(string[] args)
        {
            int[,] mas = new int[9, 9];
            double average = 0;
            int summ=0;
            Random rand = new Random();
            for (int i = 0; i < mas.GetLength(0); i++)
            {
                for (int j = 0; j < mas.GetLength(1); j++)
                {
                    mas[i, j] = rand.Next(0, 9);
                    summ+= mas[i, j];
                }
            }
 
            Console.WriteLine("среднее значение {0}",average=summ/81);
            
            for (int i = 0; i < mas.GetLength(0); i++)
            {
                for (int j = 0; j < mas.GetLength(1); j++)
                {
                    if (mas[i,j] > average)
                    {
                        
                        Console.WriteLine("изменяется строка {0}", i);
                        dif(i,average, mas);
                        
                    }
 
                }
 
            }
            Console.WriteLine("измененный массив");
            for (int i = 0; i < mas.GetLength(0); i++)
            {
                for (int j = 0; j < mas.GetLength(1); j++)
                {
                    Console.Write(mas[i, j]);
                }
                Console.WriteLine();
            }
        }

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


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

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

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