Найти произведение положительных элементов матрицы - C (СИ)
Формулировка задачи:
в матрице А(3,5) найти произведение положительных элементов. Спасибо за ранее)))
Решение задачи: «Найти произведение положительных элементов матрицы»
textual
Листинг программы
/*Задача: в матрице А(3,5) найти произведение положительных элементов. */
#include <stdio.h>
#include <conio.h>
#include <locale.h>
#include <stdlib.h>
#include <time.h>
int i;
int j;
int m;
int n;
int fill_matr(void){ //Функция заполняет матрицу
int matr_number = -20 + rand() %50;;
return matr_number; //вернуть число
}
int main(int argc, char** argv[])
{
setlocale(LC_ALL, "RUS");
m=3;
n=5;
float str_mult;
int matrix[m][n];
for (i = 0; i < m; i++ ){
for (j=0; j<n; j++){
matrix[i][j]=fill_matr();//заполняем матрицу
}
}
printf( "Вот такой массив у нас получился:\n" );
str_mult=1;
for ( i = 0; i < m; i++ ) {
for ( j = 0; j < n; j++ )
{
printf( "[%d][%d]=%d ", i, j, matrix[i][j] );
if(matrix[i][j]>0){
str_mult*=matrix[i][j];//вычисляем произведение эл-тов строки
}
}
printf( "\n");
}
printf( "\n Произведение положительных элементов матрицы: %.1f \n", str_mult );
}
Объяснение кода листинга программы
- Включаем необходимые заголовочные файлы для работы с матрицами и заполнения матрицы случайными числами
- Инициализируем переменные для заполнения матрицы
- Заполняем матрицу случайными числами с помощью функции fill_matr()
- Выводим получившуюся матрицу на экран
- Инициализируем переменную для хранения произведения положительных элементов строки со значением 1
- Проходим по всем элементам матрицы и если элемент больше нуля, то умножаем его на переменную str_mult
- Выводим произведение положительных элементов матрицы на экран