Найти среднее геометрическое элементов матрицы - C (СИ)
Формулировка задачи:
Найти среднее геометрическое элементов матрицы.
Решение задачи: «Найти среднее геометрическое элементов матрицы»
textual
Листинг программы
double sg(int** matr, int n, int m) { double rez = 1; double* mas = new double[n]; int i, j; for(i = 0; i < n; ++i) { mas[i] = 1; for(j = 0; j < m; ++j) mas[i] *= matr[i][j]; mas[i] = pow(mas[i], 1.0 / m); } for(i = 0; i < n; ++i) rez *= mas[i]; rez = pow(rez, 1.0 / n); delete[] mas; return rez; }
Объяснение кода листинга программы
- В функции объявлены три параметра:
n
- количество строк в матрице,m
- количество столбцов в матрице,matr
- указатель на матрицу. - Переменная
rez
инициализируется единицей. - Создается динамический массив
mas
для хранения результатов. - Переменные
i
иj
используются в двух вложенных циклах. - В первом цикле каждый элемент массива
mas
инициализируется единицей. - Во втором цикле каждый элемент массива
mas
умножается на соответствующий элемент матрицы. - Третий цикл: каждый элемент массива
mas
возводится в степень, обратную количеству столбцов матрицы. - Четвертый цикл: каждый элемент массива
mas
умножается наrez
. rez
возводится в степень, обратную количеству строк матрицы.- В конце функции
rez
возвращается как результат работы функции. - Все временные переменные освобождаются с помощью оператора
delete[]
. - Результатом работы функции является среднее геометрическое элементов матрицы.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д