Найти наибольшее из значений элементов, расположенных в закрашенной части матрицы - C (СИ)
Формулировка задачи:
Всем здрасте!!! Задание : Это находит эту область
Мне нужно чтобы находил эту область
Помогите!!!
Дана действительная квадратная матрица порядка n. Найти наибольшее из значений элементов, расположенных в закрашенной части матрицы
#include <conio.h>
#include <stdio.h>
int main()
{
int n,A[10][10],min,max,i,j;
printf("Enter n=");
scanf("%i",&n);
for(i=0;i<n;i++)
for(j=0;j<n;j++)
{
printf("A[%i,%i]=",i+1,j+1);
scanf("%i",&A[i][j]);
}
min=A[0][0];
max=A[0][0];
for(i=0;i<n;i++)
{
for(j=0;j<n;j++)
{
if(j>=j&&n-i-1<=i||j<=j&&n-i-1>=i)
{
if(A[i][j]>max)max=A[i][j];
if(A[i][j]<min)min=A[i][j];
}
printf("%4i ",A[i][j]);
}
printf("\n");
}
printf("Max=%i\nMin=%i",max,min);
getch();
return 0;
}Решение задачи: «Найти наибольшее из значений элементов, расположенных в закрашенной части матрицы»
textual
Листинг программы
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#include <conio.h>
#define size 6
int main(void)
{
srand(unsigned(time(NULL)));
int cnt=0,i,j;
int mat[size][size],max;
printf("Matrix:\n");
for(i=0; i<size; i++)
{
for(j=0; j<size; j++)
{
mat[i][j]=rand()%99;
printf("%d\t",mat[i][j]);
if((j<=i && i+j>=size-1)&& !cnt)
{
max=mat[i][j];
cnt=1;
}
}
printf("\n");
}
printf("\nNew matrix:\n");
for(i=0; i<size; i++)
{
for(j=0; j<size; j++)
{
if((j<=i && i+j>=size-1))
{
mat[i][j]>max ? max=mat[i][j] : max;
}
}
}
printf("\nMax -> %d\n",max);
getch();
return 0;
}
Объяснение кода листинга программы
- Включаем необходимые заголовочные файлы для работы с C, такие как stdio.h, stdlib.h и time.h
- Определяем размерность матрицы с помощью #define size 6
- Инициализируем переменные:
- cnt - счетчик, используемый для определения первого максимального значения в матрице
- i, j - индексы для обхода матрицы
- mat[size][size] - сама матрица, заполненная случайными числами от 0 до 99
- Выводим матрицу на экран
- Перебираем элементы матрицы и ищем наибольшее значение, сохраняя его в переменной max
- Выводим новое значение матрицы, где закрашенная часть заменена на максимальное значение
- Выводим наибольшее значение на экран
- Ждем нажатия клавиши для выхода из программы