Найти среднее геометрическое значение элементов матрицы - C#
Формулировка задачи:
Дана матрица M*N. Найти среднее геометрическое зна¬чение элементов матрицы и выяснить, каких элементов в матрице больше больших среднего геометрического или меньших среднего геометрического. c#
Решение задачи: «Найти среднее геометрическое значение элементов матрицы»
textual
Листинг программы
using System; class Program { static void Main() { Console.Write("Введите количество строк в матрице: "); int M = int.Parse(Console.ReadLine()); Console.Write("Введите количество столбцов в матрице: "); int N = int.Parse(Console.ReadLine()); double count = (double)M * N; int[,] matrix = new int[M, N]; Random r = new Random(); // объявление переменной для генерации случ. чисел for (int i = 0; i < M; i++) // заполнения матрицы случ. числами { for (int j = 0; j < N; j++) { matrix[i, j] = r.Next(1, 99); // от 1 до 99 } } /* //заполение матрицы с клавиатуры Console.WriteLine(); Console.Write("Введите значение {0} ", count); Console.WriteLine(); for (int i = 0; i < M; ++i) { for (int j = 0; j < N; ++j) { Console.Write("Введите значение элемента матрицы для строки {0}, столбец {1}: ", i,j); matrix[i, j] = Convert.ToInt32(Console.ReadLine()); } } */ Console.WriteLine(); Console.WriteLine("Получаем матрицу вида:"); Console.WriteLine(); for (int i = 0; i < M; i++) // вывод матрицы { for (int j = 0; j < N; j++) { Console.Write("{0,4}", matrix[i, j]); } Console.WriteLine(); } double Mul = 1.0; int moreAverage = 0;//больше среднего int lessAverage = 0;//меньше среднего //Подсчёт произведения элементов матрицы for (int i = 0; i < M; i++) { for (int j = 0; j < N; j++) { Mul *= matrix[i, j]; } } //среднее геометрическое значение элементов матрицы double averGeom = Math.Pow(Mul, 1.0 / count); Console.WriteLine(); Console.WriteLine("Cреднее геометрическое значение элементов матрицы : " + averGeom); /*Подсчёт каких элементов в матрице больше, больших среднего геометрического или меньших среднего геометрического*/ for (int i = 0; i < M; i++) { for (int j = 0; j < N; j++) { if (averGeom < matrix[i, j]) moreAverage++; else if (averGeom > matrix[i, j]) lessAverage++; } } Console.WriteLine(); if (moreAverage > lessAverage) Console.WriteLine("Элементов в матрице, которые больше среднего геометрического, больше."); if (moreAverage < lessAverage) Console.WriteLine("Элементов в матрице, которые меньше среднего геометрического, больше."); Console.ReadKey(); } }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д