Получить среднее арифметическое положительных элементов матрицы - 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, что означает успешное выполнение программы.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д