C/C++

Нужно поменять максимальное число и минимальное число в матрице

#include
#include
#include
using namespace std;

int main()
{
SetConsoleCP(1251);
SetConsoleOutputCP(1251);

int conster = 0;
int row = 3;
int col = 3;

int** array = new int* [row];

for (int i = 0; i < row; i++)
{
array[i] = new int[col];
}
cout << "Заполните матрицу " << endl ;
for (int g = 0; g < row; g++)
{
for (int i = 0; i < col; i++)
{
cin >> array[g][i];

}
}
for (int i = 0; i < row; i++)
{
for (int g = 0; g < col; g++)
{

if (conster == col)
{
cout << endl;
conster = 0;
}

cout << array[i][g] << "\t";
++conster;
}
}
return 0;
}
#include <iostream>
#include <iomanip>
#include <cstdlib>
#include <Windows.h>
using namespace std;
int main() {
system("chcp 1251 > nul");
int row = 3;
int col = 3;
int** matrix = new int* [row];
for (int i = 0; i < row; ++i) {
matrix[i] = new int[col];
}
cout << "Заполните матрицу " << endl;
for (int i = 0; i < row; ++i) {
for (int j = 0; j < col; ++j) {
cin >> matrix[i][j];
}
}
system("cls");
for (int i = 0; i < row; i++) {
for (int j = 0; j < col; ++j) {
cout << setw(5) << matrix[i][j];
}
puts("");
}
puts("");
int min = matrix[0][0];
int* pmin = &matrix[0][0];
int max = matrix[0][0];
int* pmax = &matrix[0][0];
for (int i = 0; i < row; ++i) {
for (int j = 0; j < col; ++j) {
if (min > matrix[i][j]) {
min = matrix[i][j];
pmin = &matrix[i][j];
}
if (max < matrix[i][j]) {
max = matrix[i][j];
pmax = &matrix[i][j];
}
}
}
int tmp = *pmin;
*pmin = *pmax;
*pmax = tmp;
for (int i = 0; i < row; ++i) {
for (int j = 0; j < col; ++j) {
cout << setw(5) << matrix[i][j];
}
puts("");
}
for (int i = 0; i < row; ++i) {
delete[] matrix[i];
}
delete[] matrix;
system("pause > nul");
}
Кирилл Lorragon
Кирилл Lorragon
59 450
Лучший ответ
#include "iostream"
#include "iomanip"
#include "algorithm"
using namespace std;
int main(){
const int n=5; int a[n][n]; srand(time(NULL));
for(int(&i)[n]:a){for(int &j:i)cout<<setw(4)<<(j=rand()%199-99); cout<< endl;}
int *k=&a[0][0]; cout<< endl;
swap(*max_element(k,k+n*n),*min_element(k,k+n*n));
for(int(&i)[n]:a){for(int &j:i) cout<<setw(4)<<j; cout<< endl;}}
РХ
Рим Хазиев
89 744

Похожие вопросы