Другие языки программирования и технологии

.помогите пожалуйста двумерный массив на языке c++

Дан двумерный массив целых чисел a из n строк и m столбцов. Требуется определить номер столбца в котором расположен минимальный элемент четвертой строки массива. Если таких элементов несколько, должен быть определён самый первый из них.

Формат входных данных
Первая строка входного файла содержит два натуральных числа n (4≤n≤100) и m (1≤m≤100) — количество строк и столбцов массива a. Следующие n строк содержат по m целых чисел (|aij|≤1000) — элементы массива a.

Формат выходных данных
Требуется вывести искомый номер столбца.
Примеры
входные данные выходные данные
4 3
1 5 -1
7 -9 2
-4 6 4
4 1 -1
3
#include <iostream>
#include <iomanip>
#include <string>
#include <fstream>
using namespace std;
pair<size_t, size_t> load(const string& path, int* box, const size_t lim) {
ifstream file(path);
if (file.is_open()) {
size_t n, m;
file >> n >> m;
if (n > lim || m > lim || n < 4) exit(0);
for (size_t i = 0; i < n; ++i) {
const auto a = i * lim;
const auto b = m + i * lim;
for (auto j = a; j < b; ++j) file >> box[j];
}
file.close();
return { n, m };
}
return { 0, 0 };
}
size_t min(const int* row, const size_t n) {
auto mine = row[0];
auto pos = 1U;
for (size_t i = 1; i < n; ++i) {
if (row[i] < mine) {
mine = row[i];
pos = i + 1;
}
}
return pos;
}
void print(const int* row, const size_t n, const streamsize w = 6) {
for (size_t i = 0; i < n; ++i) cout << setw(w) << row[i];
cout.put('\n');
}
int main() {
const size_t lim = 100;
int matrix[lim][lim];
auto[rows, cols] = load("matrix.txt", &matrix[0][0], lim);
for (size_t row = 0; row < rows; ++row) print(matrix[row], cols);
cout << min(matrix[3], cols) << endl;
system("pause");
}
РШ
Руслан Шилдыкенов
71 477
Лучший ответ