
Дан двумерный массив a, размером (n´m). Найти минимальный элемент в каждой строке матрицы среди
положительных элементов C++

Ответы на вопрос

Ответ:
#include <iostream>
using namespace std;
int** CreateArr(int rows, int cols)
{
int** arr = new int* [rows];
for (int i = 0; i < rows; i++) arr[i] = new int[cols];
return arr;
}
void FillArr(int** arr, int rows, int cols)
{
for (int i = 0; i < rows; i++) for (int j = 0; j < cols; j++) arr[i][j] = -10 + rand() % 20;
}
void PrintArr(int** arr, int rows, int cols)
{
cout << endl << endl;
for (int i = 0; i < rows; i++)
{
int min{ -1 };
cout << "Строка #" << i << ": ";
for (int j = 0; j < cols; j++)
{
cout << '\t' << arr[i][j];
if (arr[i][j] >= 0 && (arr[i][j] < arr[min / 10][min % 10] || min == -1)) min = (i * 10) + j;
}
cout << '\t';
if (min != -1) cout << "Минимальный положительный элемент в этой строке: " << arr[min / 10][min % 10] << " под индексом [" << min % 10 << ']' << endl;
else cout << "Положительных элементов нет" << endl;
}
cout << endl << endl;
}
void DeleteArr(int** arr, int rows)
{
for (int i = 0; i < rows; i++) delete arr[i];
delete[] arr;
}
int main()
{
srand(time(NULL));
setlocale(0, "");
int n{}, m{};
cin >> n >> m;
int** a = CreateArr(n, m);
FillArr(a, n, m);
PrintArr(a, n, m);
DeleteArr(a, n);
return 0;
}



помощью программы на языке Python можно решить задачу следующим образом:
```python def find_min_positive_elements(matrix): n = len(matrix) # количество строк в матрице m = len(matrix[0]) # количество столбцов в матрице min_positive_elements = [] # список для хранения минимальных положительных элементов
for i in range(n): positive_elements = [] # список для хранения положительных элементов в каждой строке for j in range(m): if matrix[i][j] > 0: positive_elements.append(matrix[i][j]) # находим минимальный положительный элемент в строке if len(positive_elements) > 0: min_positive_elements.append(min(positive_elements)) else: min_positive_elements.append(None) # в случае, если положительных элементов в строке нет, добавляем None в список return min_positive_elements ```
Пример использования функции:
```python matrix = [[-1, 2, 3], [4, -5, 6], [-7, 8, -9]]
min_positive_elements = find_min_positive_elements(matrix) print(min_positive_elements) # [2, 4, 8] ```
В данном примере функция `find_min_positive_elements()` принимает двумерный массив `matrix` и возвращает список `min_positive_elements`, где каждый элемент соответствует минимальному положительному элементу в каждой строке матрицы. Если в строке нет положительных элементов, то в соответствующий элемент списка добавляется значение `None`.


Похожие вопросы
Топ вопросов за вчера в категории Информатика
Последние заданные вопросы в категории Информатика
-
Математика
-
Литература
-
Алгебра
-
Русский язык
-
Геометрия
-
Английский язык
-
Химия
-
Физика
-
Биология
-
Другие предметы
-
История
-
Обществознание
-
Окружающий мир
-
География
-
Українська мова
-
Информатика
-
Українська література
-
Қазақ тiлi
-
Экономика
-
Музыка
-
Право
-
Беларуская мова
-
Французский язык
-
Немецкий язык
-
МХК
-
ОБЖ
-
Психология
-
Физкультура и спорт
-
Астрономия
-
Кыргыз тили
-
Оʻzbek tili