
Вопрос задан 03.06.2019 в 00:05.
Предмет Информатика.
Спрашивает Кнутов Рома.
Ребят, кто нибудь может написать программу транспонирования обычной матрицы из 9 чисел? Заранее
спасибо

Ответы на вопрос

Отвечает Петров Данил.
Const n=3;
var a:array[1..n,1..n] of integer;
i,j,c:integer;
begin
Randomize;
writeln('Исходная матрица:');
for i:= 1 to n do
begin
for j:=1 to n do
begin
a[i,j]:=random(10);
write(a[i,j]:4);
end;
writeln;
end;
for i:=1 to n do
for j:=i+1 to n do
begin c:=a[i,j]; a[i,j]:=a[j,i]; a[j,i]:=c; end;
writeln('Транспонированная матрица:');
for i:=1 to n do
begin
for j:=1 to n do write(a[i,j]:4);
writeln;
end;
end.
Пример:
Исходная матрица:
1 4 4
8 3 9
8 2 1
Транспонированная матрица:
1 8 8
4 3 2
4 9 1
var a:array[1..n,1..n] of integer;
i,j,c:integer;
begin
Randomize;
writeln('Исходная матрица:');
for i:= 1 to n do
begin
for j:=1 to n do
begin
a[i,j]:=random(10);
write(a[i,j]:4);
end;
writeln;
end;
for i:=1 to n do
for j:=i+1 to n do
begin c:=a[i,j]; a[i,j]:=a[j,i]; a[j,i]:=c; end;
writeln('Транспонированная матрица:');
for i:=1 to n do
begin
for j:=1 to n do write(a[i,j]:4);
writeln;
end;
end.
Пример:
Исходная матрица:
1 4 4
8 3 9
8 2 1
Транспонированная матрица:
1 8 8
4 3 2
4 9 1



Отвечает Чопик Аня.
// PascalABC.NET 3.1, сборка 1192 от 07.03.2016
begin
// инициализация
var b:=MatrixRandom(3,3,10,99);
// вывод
Writeln('Исходная матрица');
for var i:=0 to 2 do begin
for var j:=0 to 2 do Write(b[i,j]:3);
Writeln
end;
// транспонирование
for var i:=0 to 2 do
for var j:=i+1 to 2 do
if i<>j then Swap(b[i,j],b[j,i]);
// вывод
Writeln('Транспонированная матрица');
for var i:=0 to 2 do begin
for var j:=0 to 2 do Write(b[i,j]:3);
Writeln
end
end.
Тестовое решение:
Исходная матрица
48 30 15
38 49 19
21 15 41
Транспонированная матрица
48 38 21
30 49 15
15 19 41
begin
// инициализация
var b:=MatrixRandom(3,3,10,99);
// вывод
Writeln('Исходная матрица');
for var i:=0 to 2 do begin
for var j:=0 to 2 do Write(b[i,j]:3);
Writeln
end;
// транспонирование
for var i:=0 to 2 do
for var j:=i+1 to 2 do
if i<>j then Swap(b[i,j],b[j,i]);
// вывод
Writeln('Транспонированная матрица');
for var i:=0 to 2 do begin
for var j:=0 to 2 do Write(b[i,j]:3);
Writeln
end
end.
Тестовое решение:
Исходная матрица
48 30 15
38 49 19
21 15 41
Транспонированная матрица
48 38 21
30 49 15
15 19 41


Топ вопросов за вчера в категории Информатика

Информатика 47

Информатика 33

Информатика 67

Информатика 18

Информатика 25

Информатика 563

Информатика 16
Последние заданные вопросы в категории Информатика
Предметы
-
Математика
-
Литература
-
Алгебра
-
Русский язык
-
Геометрия
-
Английский язык
-
Химия
-
Физика
-
Биология
-
Другие предметы
-
История
-
Обществознание
-
Окружающий мир
-
География
-
Українська мова
-
Информатика
-
Українська література
-
Қазақ тiлi
-
Экономика
-
Музыка
-
Право
-
Беларуская мова
-
Французский язык
-
Немецкий язык
-
МХК
-
ОБЖ
-
Психология
-
Физкультура и спорт
-
Астрономия
-
Кыргыз тили
-
Оʻzbek tili