Получить среднее арифметическое положительных элементов матрицы - C (СИ)
Формулировка задачи:
Как реализовать задачу на языке си?
В двумерном массиве целочисленном получить среднее арифметическое положительных элементов.
Решение задачи: «Получить среднее арифметическое положительных элементов матрицы»
textual
Листинг программы
- #include <stdio.h>
- #define N 4
- int main(void){
- int i, j, cnt;
- double sum;
- int m[N][N] = {
- { 1, -5, -1, 2 },
- { 2, -9, -5, 3 },
- { 1, -1, -1, -5 },
- { 2, 2, 2, 2 }
- };
- sum = 0.0;
- cnt = 0;
- for(i = 0; i < N; ++i){
- for(j = 0; j < N; ++j){
- if(m[i][j] > 0){
- sum += m[i][j];
- ++cnt;
- }
- }
- }
- if(cnt > 0)
- printf("avg: %lf\n", sum / cnt);
- return 0;
- }
Объяснение кода листинга программы
- Подключение стандартной библиотеки для работы с файлами и вывода данных - iostream.
- Определение размера матрицы N = 4.
- Объявление переменных:
- i, j - индексы для обхода матрицы;
- cnt - счетчик положительных элементов;
- sum - переменная для хранения суммы положительных элементов.
- Инициализация матрицы m[N][N] = {...}.
- Инициализация переменной sum = 0.0 и cnt = 0.
- Обход матрицы с помощью двух вложенных циклов:
- внешний цикл для обхода строк;
- внутренний цикл для обхода столбцов.
- Проверка условия if(m[i][j] > 0) для каждого элемента матрицы.
- Если условие выполняется, то к переменной sum прибавляется значение элемента и к переменной cnt прибавляется единица.
- После завершения циклов, выводится сообщение с результатом - средним арифметическим положительных элементов матрицы (sum / cnt).
- Конец функции main() возвращает 0, что означает успешное выполнение программы.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д