,нужно написать код C++. Задание 1. Дан двумерный массив из двадцати двух строк и двух столбцов. Найти номера двух соседних строк, сумма элементов в которых максимальна. Задание 2. Дан двумерный массив размером 7х7, заполняется случайными элементами. Найти наименьшее из значений элементов, расположенных в местах, где находятся нули так, как показано на рисунке : P.s. картинка ко 2-му заданию
Для решения первого задания нам необходимо найти две соседние строки, сумма элементов в которых максимальна.
Прежде всего, нам потребуется объявить и инициализировать двумерный массив размером 22x2:
```c++
int array[22][2] = {
// Ваш массив значений здесь
};
```
Затем нам понадобится переменная для хранения номера первой соседней строки:
```c++
int firstRow = 0;
```
И переменная для хранения номера второй соседней строки:
```c++
int secondRow = 1;
```
Далее, необходимо пройти по всем строкам массива и вычислить сумму элементов каждой пары соседних строк. Максимальную сумму будем сравнивать с текущей суммой и, если текущая сумма больше, обновим номера найденных строк:
```c++
int maxSum = 0;
for (int i = 0; i < 20; i++) {
int currentSum = array[i][0] + array[i][1];
if (currentSum > maxSum) {
maxSum = currentSum;
firstRow = i;
secondRow = i + 1;
}
}
```
Наконец, для вывода номеров найденных строк воспользуемся следующим кодом:
```c++
cout << "Номера двух соседних строк с максимальной суммой элементов: " << firstRow << " и " << secondRow << endl;
```
Теперь перейдем ко второму заданию.
Для решения второго задания нам необходимо найти наименьшее значение среди элементов, расположенных в местах, где находятся нули (согласно предоставленной картинке).
Прежде всего, нам потребуется объявить и инициализировать двумерный массив размером 7x7 и заполнить его случайными элементами:
```c++
#include // для функции rand
#include // для функции time
int array[7][7];
srand(time(0)); // Инициализируем генератор случайных чисел
for (int i = 0; i < 7; i++) {
for (int j = 0; j < 7; j++) {
array[i][j] = rand() % 100; // Случайные элементы в диапазоне от 0 до 99
}
}
```
Затем нам понадобится переменная для хранения минимального значения:
```c++
int minValue = INT_MAX;
```
Далее, необходимо пройти по всем элементам массива и проверить, является ли текущий элемент нулевым. Если элемент равен нулю и меньше текущего минимального значения, обновим его:
```c++
for (int i = 0; i < 7; i++) {
for (int j = 0; j < 7; j++) {
if (array[i][j] == 0 && array[i+1][j] == 0 && array[i][j+1] == 0 && array[i+1][j+1] == 0) {
if (array[i][j] < minValue) {
minValue = array[i][j];
}
}
}
}
```
Наконец, для вывода наименьшего значения воспользуемся следующим кодом:
```c++
cout << "Наименьшее значение среди элементов, расположенных в местах, где находятся нули: " << minValue << endl;
```
Это все шаги решения ваших задач. Если у вас возникнут вопросы или понадобится дополнительное объяснение, пожалуйста, не стесняйтесь задавать!
Для решения первого задания нам необходимо найти две соседние строки, сумма элементов в которых максимальна.
Прежде всего, нам потребуется объявить и инициализировать двумерный массив размером 22x2:
```c++
int array[22][2] = {
// Ваш массив значений здесь
};
```
Затем нам понадобится переменная для хранения номера первой соседней строки:
```c++
int firstRow = 0;
```
И переменная для хранения номера второй соседней строки:
```c++
int secondRow = 1;
```
Далее, необходимо пройти по всем строкам массива и вычислить сумму элементов каждой пары соседних строк. Максимальную сумму будем сравнивать с текущей суммой и, если текущая сумма больше, обновим номера найденных строк:
```c++
int maxSum = 0;
for (int i = 0; i < 20; i++) {
int currentSum = array[i][0] + array[i][1];
if (currentSum > maxSum) {
maxSum = currentSum;
firstRow = i;
secondRow = i + 1;
}
}
```
Наконец, для вывода номеров найденных строк воспользуемся следующим кодом:
```c++
cout << "Номера двух соседних строк с максимальной суммой элементов: " << firstRow << " и " << secondRow << endl;
```
Теперь перейдем ко второму заданию.
Для решения второго задания нам необходимо найти наименьшее значение среди элементов, расположенных в местах, где находятся нули (согласно предоставленной картинке).
Прежде всего, нам потребуется объявить и инициализировать двумерный массив размером 7x7 и заполнить его случайными элементами:
```c++
#include
#include
int array[7][7];
srand(time(0)); // Инициализируем генератор случайных чисел
for (int i = 0; i < 7; i++) {
for (int j = 0; j < 7; j++) {
array[i][j] = rand() % 100; // Случайные элементы в диапазоне от 0 до 99
}
}
```
Затем нам понадобится переменная для хранения минимального значения:
```c++
int minValue = INT_MAX;
```
Далее, необходимо пройти по всем элементам массива и проверить, является ли текущий элемент нулевым. Если элемент равен нулю и меньше текущего минимального значения, обновим его:
```c++
for (int i = 0; i < 7; i++) {
for (int j = 0; j < 7; j++) {
if (array[i][j] == 0 && array[i+1][j] == 0 && array[i][j+1] == 0 && array[i+1][j+1] == 0) {
if (array[i][j] < minValue) {
minValue = array[i][j];
}
}
}
}
```
Наконец, для вывода наименьшего значения воспользуемся следующим кодом:
```c++
cout << "Наименьшее значение среди элементов, расположенных в местах, где находятся нули: " << minValue << endl;
```
Это все шаги решения ваших задач. Если у вас возникнут вопросы или понадобится дополнительное объяснение, пожалуйста, не стесняйтесь задавать!