Дан целочисленный массив А[N][N]. Определить максимальный элемент
среди элементов, лежащих ниже главной диагонали, а также минимальный эле-
мент среди элементов, лежащих выше побочной диагонали.
C/C++
Решить задачу на C++
#include <iostream>
#include <ctime>
using namespace std;
int main()
{
const int N = 5;
int A[N][N];
srand(time(nullptr));
rand();
for(int x = 0; x < N; x++)
{
for(int y = 0; y < N; y++)
{
A[x][y] = rand() % 20 + 1; // [1;20]
cout << A[x][y] << '\t';
}
cout << endl;
}
cout << endl;
int max = 0; // < 1
int min = 21; // > 20
for(int x = 0; x < N; x++)
for(int y = 0; y < N; y++)
{
if(x > y)
{
if(max < A[x][y]) max = A[x][y];
}
if(x < N - 1 - y)
{
if(min > A[x][y]) min = A[x][y];
}
}
cout << "max = " << max << endl;
cout << "min = " << min << endl;
return 0;
}
#include <ctime>
using namespace std;
int main()
{
const int N = 5;
int A[N][N];
srand(time(nullptr));
rand();
for(int x = 0; x < N; x++)
{
for(int y = 0; y < N; y++)
{
A[x][y] = rand() % 20 + 1; // [1;20]
cout << A[x][y] << '\t';
}
cout << endl;
}
cout << endl;
int max = 0; // < 1
int min = 21; // > 20
for(int x = 0; x < N; x++)
for(int y = 0; y < N; y++)
{
if(x > y)
{
if(max < A[x][y]) max = A[x][y];
}
if(x < N - 1 - y)
{
if(min > A[x][y]) min = A[x][y];
}
}
cout << "max = " << max << endl;
cout << "min = " << min << endl;
return 0;
}
#include <iostream>
using namespace std;
int main()
{
constexpr int size = 5;
int A[size][size]
{
{1,4,2, 6, 0},
{4,3,-1, 3, 8},
{3,4,22,0, 12},
{34,-4,-6,3,5},
{40,0,0,43, 1}
};
int max = A[1][0];
for (int i = 2; i < size; i++)
for (int j = 0; j < i; j++) if (A[i][j] > max) max = A[i][j];
int min = A[size - 2][size - 1];
for (int i = 0; i < size - 2; i++)
for (int j = i+1; j < size; j++) if (A[i][j] < min) min = A[i][j];
cout << "min=" << min << "\nmax=" << max;
}
UPD:
Или с переподвывертом:
int max = A[1][0];
int min = A[size - 2][size - 1];
for (int i = 2; i < size; i++)
for (int j = 0; j < i; j++)
{
if (A[i][j] > max) max = A[i][j];
if (A[size - 1 - i][size - 1 - j] < min) min = A[size - 1 - i][size - 1 - j];
}
UPD2: Или с дефином чтобы красивше
#define ii size - 1 - i
#define jj size - 1 - j
...
{
if (A[i][j] > max) max = A[i][j];
if (A[ii][jj] < min) min = A[ii][jj];
}
using namespace std;
int main()
{
constexpr int size = 5;
int A[size][size]
{
{1,4,2, 6, 0},
{4,3,-1, 3, 8},
{3,4,22,0, 12},
{34,-4,-6,3,5},
{40,0,0,43, 1}
};
int max = A[1][0];
for (int i = 2; i < size; i++)
for (int j = 0; j < i; j++) if (A[i][j] > max) max = A[i][j];
int min = A[size - 2][size - 1];
for (int i = 0; i < size - 2; i++)
for (int j = i+1; j < size; j++) if (A[i][j] < min) min = A[i][j];
cout << "min=" << min << "\nmax=" << max;
}
UPD:
Или с переподвывертом:
int max = A[1][0];
int min = A[size - 2][size - 1];
for (int i = 2; i < size; i++)
for (int j = 0; j < i; j++)
{
if (A[i][j] > max) max = A[i][j];
if (A[size - 1 - i][size - 1 - j] < min) min = A[size - 1 - i][size - 1 - j];
}
UPD2: Или с дефином чтобы красивше
#define ii size - 1 - i
#define jj size - 1 - j
...
{
if (A[i][j] > max) max = A[i][j];
if (A[ii][jj] < min) min = A[ii][jj];
}
Жандос Куанышкалиев
сможете помочь пожалуйста с моим последним вопросом?
#include <iostream>
#include <ctime>
using namespace std;
int main() {
const int N = 10;
int array[N][N];
srand(time(0));
for(auto& arr : array) {
for(int& item : arr) {
item = rand() % 101;
}
}
int min, max;
if(N > 1) min = max = array[1][0];
for(int i = 0; i < N; ++i) {
for(int j = 0; j < N; ++j) {
if(j < i && array[i][j] > max) {
max = array[i][j];
}
if(j < N - j - 1 && array[i][j] < min) {
min = array[i][j];
}
}
}
cout << "max: " << max << endl;
cout << "min: " << min << endl;
}
#include <ctime>
using namespace std;
int main() {
const int N = 10;
int array[N][N];
srand(time(0));
for(auto& arr : array) {
for(int& item : arr) {
item = rand() % 101;
}
}
int min, max;
if(N > 1) min = max = array[1][0];
for(int i = 0; i < N; ++i) {
for(int j = 0; j < N; ++j) {
if(j < i && array[i][j] > max) {
max = array[i][j];
}
if(j < N - j - 1 && array[i][j] < min) {
min = array[i][j];
}
}
}
cout << "max: " << max << endl;
cout << "min: " << min << endl;
}
Алексей Чашников
сайт больше не заменяет html. Отредактируйте.
Похожие вопросы
- Помогите решить задачу по C++!
- Нужно срочно решить задачу на C++
- Помогите решить задачу на C++
- Помогите решить задачу на C++.
- Помогите решить задачу на c++
- Помогите пожалуйста решить задачу на C ИЛИ C#
- Решите задачу на C++
- Помогите решить задачу на C++
- Решить задачу по c++
- Помогите решить задачу на C++