Увеличить меньший элемент расположенный в одной строке матрицы с максимальным - C#
Формулировка задачи:
Здравствуйте, свалилась на меня замечательная задачка и я в ней запутался. Люди добрые, помогите!)
Дана матрица A размером 5 × 7. Для каждой строки сравнить
элементы, расположенные непосредственно перед и после максимального
элемента этой строки, и меньший из них увеличить в 2 раза.
Если максимальный элемент является первым или последним в стро-
ке, то увеличить в 2 раза только один соседний с максимальным эле-
мент.
Данные вписывать самому.
Как можно проще - желательно)
Решение задачи: «Увеличить меньший элемент расположенный в одной строке матрицы с максимальным»
textual
Листинг программы
using System;
namespace ConsoleApplication5
{
class Program
{
static void Main(string[] args)
{
int i, j;
int[,] A = new int[5, 7];
int max_index = 0;
Console.WriteLine("Заполните матрицу");
for (i = 0; i < 5; i++)
{
for (j = 0; j < 7; j++)
{
Console.Write("Введите элемент : [{0},{1}] ",i,j);
A[i, j] = int.Parse(Console.ReadLine());
}
}
Console.WriteLine("Заданная матрица : ");
for (i = 0; i < 5; i++)
{
for (j = 0; j < 7; j++)
{
Console.Write(A[i, j] + " ");
}
Console.WriteLine();
}
for (i = 0; i < 5; i++)
{
int max = 0;
for (j = 0; j < 7; j++)
{
if (A[i,j] > max)
{
max = A[i, j];
max_index = j;
}
}
if (max_index == 6)
{
A[i, max_index - 1] *= 2;
}
if (max_index == 0)
{
A[i, max_index + 1] *= 2;
}
if (max_index != 6 && max_index != 0)
{
if (A[i, max_index + 1] > A[i, max_index - 1])
{
A[i, max_index - 1] *= 2;
}
else if (A[i, max_index + 1] < A[i, max_index - 1])
{
A[i, max_index + 1] *= 2;
}
}
}
Console.WriteLine("Преобразованная матрица : ");
for (i = 0; i < 5; i++)
{
for (j = 0; j < 7; j++)
{
Console.Write(A[i,j]+" ") ;
}
Console.WriteLine();
}
Console.ReadKey();
}
}
}