Заменить элементы главной диагонали матрицы и расположенные выше нее на значение 2 - C#
Формулировка задачи:
Ребят , если не сложно помогите выполнить задание, читаю тут разные книжки , для начинающих, но толку пока не много, по крайней с заданием сам не справляюсь
В целочисленной матрице А размером N*M заменить элементы главной диагонали и расположенные выше нее на значение 2 (числа N и М задаются с клавиатуры в диапазоне от 3 до 10). Первоначальное заполнение массива А осуществить при помощи датчика случайных чисел в диапазоне от-5 до 15. Исходную и видоизмененную матрицы вывести на экран
Единственное в чем, я сам разобрался это то как заполнить массив не с клавы , а случайно , да и не факт что правильно
Randor rand = new Random(); for(int i =0;i<arr.Length;i++) arr[i] = rand.Next(3,10);//
Решение задачи: «Заменить элементы главной диагонали матрицы и расположенные выше нее на значение 2»
textual
Листинг программы
static void output(int[,] a) // функция вывода матрицы
{
for (int i = 0; i < a.GetLength(0); i++)
{
for (int j = 0; j < a.GetLength(1); j++)
Console.Write("{0,4}", a[i, j]);
Console.WriteLine();
}
Console.WriteLine();
}
static void Main(string[] args)
{
Console.Write("N = "); // размерность
int N = int.Parse(Console.ReadLine());
int[,] a = new int[N, N]; // объявление массива
Random r = new Random();
for (int i = 0; i < a.GetLength(0); i++)
for (int j = 0; j < a.GetLength(1); j++)
a[i, j] = r.Next(-5, 16); // заполняем рандомно
Console.WriteLine("Исходная\n");
output(a); // выводим
for (int i = 0; i < a.GetLength(0); i++)
for (int j = 0; j < a.GetLength(1); j++)
if (i == j || i < j) // диагональ и выше
a[i, j] = 2; // заменяем на 2
Console.WriteLine("Изменённая\n");
output(a); // выводим
Console.ReadKey();
}