Сформировать матрицу, сдвигая элементы строк - C#

Узнай цену своей работы

Формулировка задачи:

Нужно сформировать матрицу вида 1 4 9 16 25 0 1 4 9 16 0 0 1 4 9 0 0 0 1 4 0 0 0 0 1 Как это сделать, уже битый час голову ломаю. В принципе, можно задать массив b={1 4 9 16 25} и присваивать значения
for (int i=0; i<b.length; i++)
{
for (int j=0; j<b.length; j++)
{
a(i,j)=b(i);
}
}
Но каким то образом, при каждом выходе из J нужно сдвигать тот массив вправо, как это сделать?

Решение задачи: «Сформировать матрицу, сдвигая элементы строк»

textual
Листинг программы
class Program
    {
        static void PrintArr(int[,] a)
        {
            for (int i = 0; i < a.GetLength(0); i++)
            {
                for (int j = 0; j < a.GetLength(1); j++)
                {
                    Console.Write("{0}\t", a[i, j]);
                }
                Console.WriteLine();
            }
        }
 
        static void Main()
        {
            int[,] mtrx = new int[5, 5];
 
            for (int j = 0; j < mtrx.GetLength(1); j++)
            {
                mtrx[0, j] = (j + 1) * (j + 1);
            }
 
            for (int i = 1; i < mtrx.GetLength(0); i++)
            {
                for (int j = i, idx = 0; j < mtrx.GetLength(1); j++, idx++)
                {
                    mtrx[i, j] = mtrx[0, idx];
                }
            }
 
            PrintArr(mtrx);
        }
    }

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

9   голосов , оценка 4.222 из 5
Похожие ответы