Дана матрица NxM нужно её транспонировать ,причём N и М могут быть не равны.Пример:
Входные данные:
2 3
1 2 3
4 5 6
Ответ:
3 2
1 4
2 5
3 6
Ответы на вопрос
Ответил Аноним
0
// PascalABC.NET 3.3, сборка 1579 от 18.11.2017
// Внимание! Если программа не работает, обновите версию!
begin
var (m,n):=ReadInteger2('Количество строк и столбцов в матрице:');
Writeln('*** Исходная матрица [',m,',',n,'] ***');
var a:=MatrRandom(n,m,-99,99);
a.Println(4); Writeln(4*a.ColCount*'-');
a:=Transpose(a);
Writeln('*** Транспонированная матрица [',n,',',m,'] ***');
a.Println(4)
end.
Пример
Количество строк и столбцов в матрице: 5 8
*** Исходная матрица [5,8] ***
17 85 -69 45 -56
46 83 -82 96 6
21 -32 -16 -9 78
-35 45 -98 74 32
-46 -19 -82 85 76
53 26 14 -46 26
-51 -17 -41 -41 2
19 -35 -34 83 -87
--------------------
*** Транспонированная матрица [8,5] ***
17 46 21 -35 -46 53 -51 19
85 83 -32 45 -19 26 -17 -35
-69 -82 -16 -98 -82 14 -41 -34
45 96 -9 74 85 -46 -41 83
-56 6 78 32 76 26 2 -87
// Внимание! Если программа не работает, обновите версию!
begin
var (m,n):=ReadInteger2('Количество строк и столбцов в матрице:');
Writeln('*** Исходная матрица [',m,',',n,'] ***');
var a:=MatrRandom(n,m,-99,99);
a.Println(4); Writeln(4*a.ColCount*'-');
a:=Transpose(a);
Writeln('*** Транспонированная матрица [',n,',',m,'] ***');
a.Println(4)
end.
Пример
Количество строк и столбцов в матрице: 5 8
*** Исходная матрица [5,8] ***
17 85 -69 45 -56
46 83 -82 96 6
21 -32 -16 -9 78
-35 45 -98 74 32
-46 -19 -82 85 76
53 26 14 -46 26
-51 -17 -41 -41 2
19 -35 -34 83 -87
--------------------
*** Транспонированная матрица [8,5] ***
17 46 21 -35 -46 53 -51 19
85 83 -32 45 -19 26 -17 -35
-69 -82 -16 -98 -82 14 -41 -34
45 96 -9 74 85 -46 -41 83
-56 6 78 32 76 26 2 -87
Новые вопросы
Математика,
2 года назад
Английский язык,
2 года назад
Математика,
8 лет назад
Геометрия,
8 лет назад
Алгебра,
9 лет назад
Литература,
9 лет назад