
НАПИСАТЬ В С++ Создать два двумерных массива из целых (1-100) случайным образом, найти
минимальный элемент заданной строки. Вывести на экран его индексы и значение. Двумерные массивы N×N. N – 85

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

// Считал, что под N -- 85 подразумевается N=85, то есть создаем два массива размером 85x85
// Индексы элемента i,j выводятся так: arr[i][j]
// Не использовал динамическую память, так как это не было сказано в задании
#include <iostream>
#include <cstdlib> // rand(), srand()
#include <ctime> // time()
int main()
{
/*
* Можно протестировать на простых примерах:
*
* const int n = 3;
* int arr1[n][n]{ { 1, 2, 3 }, { 55, 89, 11 }, { 99, 0, 89 } };
* int arr2[n][n]{ { 3, 3, 1 }, { 66, 89, 55 }, { 77, 0, -5 } };
*/
const int n = 85;
int arr1[n][n]{};
int arr2[n][n]{};
srand(time(0));
for (int i = 0; i < n; ++i) {
for (int j = 0; j < n; ++j) {
arr1[i][j] = rand() % 100 + 1;
arr2[i][j] = rand() % 100 + 1;
}
}
int row;
std::cout << "Enter row (0-" << n - 1 << "): ";
std::cin >> row;
if (row < 0 || row >= n) {
std::cout << "incorrect row\n";
return 0;
}
int min1 = arr1[row][0];
int min2 = arr2[row][0];
int index1 = 0;
int index2 = 0;
for (int i = 1; i < n; ++i) {
if (arr1[row][i] < min1) {
index1 = i;
min1 = arr1[row][i];
}
if (arr2[row][i] < min2) {
index2 = i;
min2 = arr2[row][i];
}
}
std::cout << "min1 = arr1[" << row << "][" << index1 << "] = " << min1 << '\n';
std::cout << "min2 = arr2[" << row << "][" << index2 << "] = " << min2 << '\n';
// Вывод строки массива для наглядности
std::cout << "\narr1[" << row << "]: ";
for (int i = 0; i < n; ++i)
std::cout << arr1[row][i] << " ";
std::cout << "\narr2[" << row << "]: ";
for (int i = 0; i < n; ++i)
std::cout << arr2[row][i] << " ";
}



Для решения данной задачи, создадим два двумерных массива размером N×N, где N = 85. Заполним их случайными числами от 1 до 100.
```cpp
#include
int main() { const int N = 85; int arr1[N][N]; int arr2[N][N];
// Заполнение массивов случайными числами srand(time(0)); // Инициализируем генератор случайных чисел for (int i = 0; i < N; i++) { for (int j = 0; j < N; j++) { arr1[i][j] = rand() % 100 + 1; arr2[i][j] = rand() % 100 + 1; } }
// Нахождение минимального элемента заданной строки int row = 42; // Пример заданной строки int minElement = arr1[row][0]; int minIndex = 0; for (int j = 1; j < N; j++) { if (arr1[row][j] < minElement) { minElement = arr1[row][j]; minIndex = j; } }
// Вывод на экран индексов и значения минимального элемента std::cout << "Минимальный элемент: " << minElement << std::endl; std::cout << "Индексы: [" << row << "][" << minIndex << "]" << std::endl;
return 0; } ```
Здесь мы создаем два двумерных массива `arr1` и `arr2` размером 85×85 и заполняем их случайными числами от 1 до 100. Затем мы выбираем заданную строку (в данном примере - 42) и находим минимальный элемент в этой строке. Для этого мы проходим по всем элементам строки и сравниваем их с текущим минимальным элементом. Если находим элемент меньше текущего минимума, обновляем минимальный элемент и его индекс.
Наконец, выводим на экран значение минимального элемента и его индексы. В данном примере вывод будет выглядеть примерно так:
``` Минимальный элемент: 17 Индексы: [42][10] ```
Таким образом, мы нашли минимальный элемент в заданной строке и вывели на экран его индексы и значение.


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