Выясните, сколько положительных элементов содержит матрица А размером n * n при выполнении выражения - C (СИ)
Формулировка задачи:
Пусть дано натуральное число n. Выясните, сколько положительных элементов содержит матрица А размером n * n при выполнении aij=cos(i^2+n*j). (Помогите пожалуйста с выполнением данного задания, буду очень благодарен, и очень признателен, если будут также пояснения P.s что от куда берется)
Решение задачи: «Выясните, сколько положительных элементов содержит матрица А размером n * n при выполнении выражения»
textual
Листинг программы
#include <stdio.h>
#include <math.h>
int main(void)
{
int n = 1;
float m[n][n];
int i, j, k = 0;
scanf("%d", &n);
for(i = 0; i < n; ++i)
{
for(j = 0; j < n; ++j)
{
m[i][j] = cos(i*i + n*j); // запись в матрицу значений
printf("%8f ", m[i][j]); // вывод матрицы на экран
if(m[i][j] > 0) ++k; // счетчик, если элемент матрицы > 0, то k+1
}
printf("\n\n");
}
printf("%d\n", k);
return 0;
}
Объяснение кода листинга программы
В этом коде выполняются следующие действия:
- Устанавливается размерность матрицы - вводится значение переменной
n, которое определяет размерность матрицы (n на n). - Создается матрица - вводится адрес переменной
m, которая представляет собой двумерный массив (матрицу) размером n на n. - Заполняется матрица - в цикле двойной вложенности для каждого элемента матрицы вычисляется значение по формуле
cos(i*i + n*j)и записывается в соответствующую ячейку матрицы. - Выводится матрица на экран - в цикле двойной вложенности для каждого элемента матрицы выводится его значение на экран с отступами для удобочитаемости.
- Подсчитывается количество положительных элементов в матрице - в цикле двойной вложенности для каждого элемента матрицы проверяется его значение. Если оно больше нуля, то к переменной
kприбавляется единица. Переменнаяkинициализируется нулем в начале программы и используется как счетчик положительных элементов. - Выводится количество положительных элементов - в конце программы выводится значение переменной
k, которое представляет собой количество положительных элементов в матрице. - Завершается программа - функция
mainвозвращает ноль, что означает успешное завершение работы программы.