Здравствуйте. Прошу помочь со следующей проблемой.
Задание: Найти строку с наибольшим элементом и поменять её местами с последней строкой.
Вроде всё сделал, но после замены в одной из строк происходит хаос с числами.
#include <iostream>
#include <math.h>
#include <conio.h>
#define N 9
#define A 5
using namespace std;
int main()
{
setlocale(0, ".1251");
int mass[N][A], i,j, min, ryad, stolb;
double total = 0;
for (i = 0; i < N; i++)
{
for (j = 0; j < A; j++)
{
mass[i][j] = rand() % 20;
}
}
cout << "Массив из случайных чисел:\n";
for (i = 0; i < N; i++)
{
for (j = 0; j < A; j++)
{
cout.width(6);
cout << mass[i][j] << " ";
}
cout << "\n";
}
for (min = mass[0][0], i = 0; i < N; i++)
for (j = 0; j < A; j++)
if (mass[i][j] < min) min = mass[i][j];
cout << "Минимальный элемент: " << min << "\n";
for (i = 0; i < N; i++)
for (j = 0; j < A; j++)
if (mass[i][j] == min)
{
ryad = i;
stolb = j;
}
cout << "Позиция минимального элемента: " << ryad+1 << "x" << stolb +1 << "\n";
for (i = 0; i < N; i++)
{
int q = mass[ryad][i];
mass[ryad][i] = mass[N - 1][i];
mass[N - 1][i] = q;
}
cout << "Массив с замененной строкой:\n";
for (i = 0; i < N; i++)
{
for (j = 0; j < A; j++)
{
cout.width(6);
cout << mass[i][j] << " ";
}
cout << "\n";
}
system("pause");
return 0;
}
Цикл замены строчек использует переменную N
для итерации, но она отвечает за кол-во рядов, когда вам необходимо количество столбцов, поскольку нужно перенести именно столбцовые элементы. Следует заменить это число N
на A
- кол-во столбцов. Код:
for (i = 0; i < A; i++)
{
int q = mass[ryad][i];
mass[ryad][i] = mass[N - 1][i];
mass[N - 1][i] = q;
}
А случайные числа возникают из-за обращения в неизвестное пространство памяти.
Виртуальный выделенный сервер (VDS) становится отличным выбором
Кто в курсе многопоточности в C++? Решил поизучать многопоточность в C++ и заступорилсяНачал читать книгу Энтони Уильямса "Параллельное программирование...
Есть приложение, которое должно отображать разные изображения в jsp в зависимости от атрибута в сессииКак нужно составить jsp и сам servlet, чтобы...
В качестве упражнения делаю простое приложение по заказу пиццы - выбор размера (влияет на цену) плюс дополнительный топпинг (тоже влияет на цену)