Получить транспонированную матрицу - 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(); }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д