
Дан двумерный массив. Определить: а) номер строки, в которой расположен максимальный элемент
второгостолбца массива. Если элементов с максимальным значением в этом столбценесколько, то должен быть найден номер строки самого верхнего из них;ПОЖАЛУЙСТА МОЖНО ЧЕРЕЗ С++ И МАССИВ ПОЛНОСТЬЮ КОД,

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

Ответ:
#include <iostream>
using namespace std;
int main()
{
int line, column;
cout << "Введите количество строк и столбцов через пробел: ";
cin >> line >> column;
int array[50][50] = {};
cout << "Введите элементы двумерного массива: \n";
for (int i = 0; i < line; i++ )
{
for (int j = 0; j < column; j++)
{
cin >> array[i][j];
}
}
int max = array[0][1];
int line_number = 1;
for (int i = 0; i < line; i++)
{
int j = 1;
if (max < array[i][j])
{
max = array[i][j];
line_number = i + 1;
}
}
cout << line_number;
}
Объяснение:
#include <iostream> // Библиотека ввода - вывода
using namespace std; // Пространство имен
int main()
{
int line, column; // Создание целочисленных переменных, отвечающих за количество строк и столбцов в двумерном массиве
cout << "Введите количество строк и столбцов через пробел: "; // Вывод сообщения в консоль
cin >> line >> column; // Ввод количества строк и столбцов с клавиатуры
int array[50][50] = {}; // Создание целочисленного массива размером 50х50
cout << "Введите элементы двумерного массива: \n"; // Вывод сообщения в консоль
for (int i = 0; i < line; i++ ) // Цикл для ввода элементов массива
{
for (int j = 0; j < column; j++) // Цикл для ввода элементов массива
{
cin >> array[i][j]; // Ввод элементов массива
}
}
int max = array[0][1]; // Присваиваем переменной, хранящей максимум, значение массива в 0 строке и 1 столбце
int line_number = 1; // Переменная, хранящая номер строки
for (int i = 0; i < line; i++) // Цикл для прогона значений 2-го столбца
{
int j = 1; // // Нужны значения определенного столбца ⇒ значение переменной j будет постоянным
if (max < array[i][j]) // Если значение переменной max < значения массива i строки и j столбца
{
max = array[i][j]; // Значение переменной max = значению массива i строки и j столбца
line_number = i + 1; // Номер строки = индекс строки + 1 (т. к. индексация начинается с нуля)
}
}
cout << line_number; // Вывод ответа
}




Конечно, вот пример кода на C++, который решает данную задачу:
cpp#include <iostream>
int main() {
const int rows = 5; // Количество строк в массиве
const int cols = 4; // Количество столбцов в массиве
int arr[rows][cols] = {
{3, 8, 5, 2},
{1, 9, 4, 7},
{6, 3, 8, 5},
{2, 6, 9, 1},
{7, 4, 2, 0}
};
int max_element = arr[0][1]; // Максимальный элемент второго столбца
int max_row = 0; // Номер строки с максимальным элементом второго столбца
for (int i = 1; i < rows; ++i) {
if (arr[i][1] > max_element) {
max_element = arr[i][1];
max_row = i;
}
}
std::cout << "Номер строки с максимальным элементом второго столбца: " << max_row + 1 << std::endl;
return 0;
}
Просто замените значения в массиве arr
на свои данные. Код найдет максимальный элемент второго столбца и выведет номер строки, в которой он находится.


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