Заполнить секторы матрицы, которые лежат влево и вправо от главной и побочной диагоналей - C#
Формулировка задачи:
помогите, пожалуйста, написать программу на C#
Нужно заполнить секторы матрицы, которые лежат влево и вправо от главной и побочной диагоналей, ЛП, от левого верхнего угла вправо - вниз. Остаток матрицы заполнить нулями.
0 1 2 3 4 5 6 7 0 0 0 8 9 10 11 12 0 0 0 0 0 13 14 15 0 0 0 0 0 0 0 16 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 17 0 0 0 0 0 0 0 18 19 20 0 0 0 0 0 21 22 23 24 0 0 0 25 26 27 28 29 30 31 32 0
Решение задачи: «Заполнить секторы матрицы, которые лежат влево и вправо от главной и побочной диагоналей»
textual
Листинг программы
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace Console1
{
class Program
{
static int max;
static Random rnd;
static void Main(string[] args)
{
rnd = new Random();
Console.WriteLine("Введите размер матрицы: (если размер будет не коректный, значение будет по умолчанию: 10)");
try
{
max = Convert.ToInt32(Console.ReadLine());
}
catch { max = 10; }
int[,] massive = new int[max, max];
for (int i = 0; i < max; i++)
{
for (int j = 0; j < max; j++)
{
if (i < max / 2)
{
if (j > i && j < max - i - 1) massive[i, j] = rnd.Next(1, 10);
else massive[i, j] = 0;
}
else if (i > max / 2)
{
if (j < i && j > max - i - 1) massive[i, j] = rnd.Next(1, 10);
else massive[i, j] = 0;
}
else massive[i, j] = 0;
}
}
for (int i = 0; i < max; i++)
{
Console.WriteLine();
for (int j = 0; j < max; j++)
{
Console.Write(massive[i,j].ToString() + " ");
}
}
Console.ReadKey();
}
}
}