Поиск максимального и минимального элементов двумерного динамического массива

112
26 июня 2022, 09:30

Как поменять местами максимальный и минимальный элемент?

#include <iostream>
#include <locale>

using namespace std;
int main()
{
    setlocale(LC_ALL, "Russian");
    int N;
    cout << "Введите размер квадратной матрицы N:";
    cin >> N;
    float **arr = new float *[N]; 
    for (int i = 0; i < N; i++)
    {
        arr[i] = new float[N];
    }
    for(int i=0; i<N;i++)
    {
        for (int j = 0; j < N; j++) 
        {
            arr[i][j]=rand() % 100;
            cout << arr[i][j]<<"\t";
        }   
        cout << endl;
    }
    int max = arr[0][0];
    int min = max;
    for (int i = 0; i < N; i++) {
        for (int j = 0; j < N; j++) {
            if (max < arr[i][j])
                max = arr[i][j];
        }
    }
    cout <<"MAX="<< max<<endl;
    for (int i = 0; i < N; i++) {
        for (int j = 0; j < N; j++) {
            if (min > arr[i][j])
                min = arr[i][j];
        }
    }
    cout << "MIN=" <<min;
    cout << endl;
    
    for(int i=0; i<N; i++)
    {
        delete[] arr[i];
    }
    delete[] arr;
    return 0;
}
Answer 1

Максимальный и минимальный элемент вы уже нашли, теперь в тех местах где вы их сохраняете, сохраните также индексы и передайте в эту функцию:

 void swap(const int maxI, const int maxJ, const minI const minJ, float** matrix)
 {
       const float tmp = matrix[maxI][maxJ];
       matrix[maxI][maxJ] = matrix[minI][minJ];
       matrix[minI][minJ] = tmp;
 }
READ ALSO
Qt-диалог &amp; SQL на Lua

Qt-диалог & SQL на Lua

Хочу встроить Lua в свою программу, написанную на Qt/C++Нашел пока статьи и обсуждения о простом встраивании Lua в Си программу (пример)

133
Обработка пользовательского ввода С++

Обработка пользовательского ввода С++

При обработке пользовательского вода никак не могу сделать проверку на вводВот, например, таким образом я запрещаю ввод символов и разрешаю...

173
Какой способ IO использовать?

Какой способ IO использовать?

Какой способ ввода-вывода использовать в современном коде? Насколько я понимаю, в стандартной библиотеке есть 3 способа: C-подобный, C++-потоки,...

141
Почему read() принимает количество байт с помощью знакового типа?

Почему read() принимает количество байт с помощью знакового типа?

std::ifstream::read(char_type*, std::streamsize) принимает количество читаемых байт с помощью знакового типа std::streamsize, а std::fread(void*, std::size_t, std::size_t, std::FILE*) -- с помощью...

85