Получить транспонированную матрицу - C#

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

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

Основная задача ввести любое число, и чтоб программа построила матрицу до этого числа. Например вводим 9, и в итоге должно получится: 147 258 369 В общем проблема такая, не могу транспонировать матрицу. У меня матрица выходит что то типа 123 456 789 а мне нужно 147 258 369 Пробовал менять значение столбцов и строк, все время выходит что то типа: 100 250 369
static void Main(string[] args)
        {
            int m, x, y, a = -1, b = -1, diff = -1;
            m = Convert.ToInt16(Console.ReadLine());
            int[] A = { };
            for (int i = 1; i <= m; i++)
            {
                if (m % i == 0)
                {
                    x = m / i;
                    y = Math.Abs(x - i);
                    if (diff == -1 || y < diff)
                    {
                        diff = y;
                        a = i;
                        b = x;
                    }
                }
                else
                {
                }
            }
            int k, l, g;
            int[,] array = new int[1000, 1000];          
            int f = 1;
            for (l = 0; l < b; l++)
                {
                    for (k = 0; k < a; k++)
                    {                    
                    array[l, k]=f++;
                    Console.Write(array[l, k] + "\t");
                    }
                Console.WriteLine();
            }           
            Console.ReadLine();
        }

Решение задачи: «Получить транспонированную матрицу»

textual
Листинг программы
for (int i = 0; i < a * b; i++) 
{
    array[i / a, i % a] = 1 + b * (i % a) + i / a;
    Console.Write(array[i / a, i % a] + "\t");
    if (i % a == a - 1)
        Console.WriteLine();
}

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


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

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

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