Транспонирование
квадратной матрицы.
|
Program
Pro_38 (Input, Output);
|
Объявление
имени программы
|
Var
|
Блок
объявления глобальных переменных
|
X,
Y
: Array [1..20, 1..20] Of Integer;
|
Матрицы
целых чисел максимальной размерности
20x20
|
N
: Integer;
|
Размерность
матрицы
|
i,
j
: Integer;
|
i,
j - переменные циклов
|
|
|
Begin
|
Начало
тела программы
|
|
|
WriteLn
('PASCAL: Транспонирование квадратной
матрицы.');
|
Формулировка
цели алгоритма
|
Write
('Введите размерность матрицы: ');
|
Запрос
ввода размерности матрицы
|
ReadLn
(N);
|
Ввод
N
|
|
|
WriteLn
('Введите поочередно элементы таблицы:');
|
Запрос
ввода элементов таблицы
|
For
i := 1 To N Do
|
Цикл
для i
от 1 до N
|
For
j := 1 To N Do
|
Цикл
для j
от 1 до N
|
Begin
|
Начало
тела цикла
|
Write
('X[', i, ',', j, '] = ');
|
Вывод
удобной подсказки
|
ReadLn
(X [i, j] );
|
Ввод
очередного элемента матрицы X
|
End;
|
Конец
тела цикла
|
|
|
WriteLn;
|
Перевод
строки
|
For
i := 1 To N Do
|
Цикл
для i
от 1 до N
|
Begin
|
Начало
тела цикла
|
For
j := 1 To N Do
|
Цикл
для j от 1 до N
|
Write
(X [i, j] : 5);
|
Форматированный
вывод в строку очередного элемента
массива X
|
WriteLn;
|
Перевод
строки
|
End;
|
Конец
тела цикла
|
|
|
For
i := 1 To N Do
|
Цикл
для i
от 1 до N
|
For
j := 1 To N Do
|
Цикл
для j от 1 до N
|
Y
[i, j] := X [j, i];
|
Заносим
в матрицу Y соответственные матрицы X
|
|
|
WriteLn;
|
Перевод
строки
|
WriteLn('Полученная
матрица:');
|
Вывод
результирующей матрицы
|
For
i := 1 To N Do
|
Цикл
для i
от 1 до N
|
Begin
|
Начало
тела цикла
|
For
j := 1 To N Do
|
Цикл
для j от 1 до N
|
Write
(Y [i, j] : 5);
|
Форматированный
вывод в строку очередного элемента
массива Y
|
WriteLn;
|
Перевод
строки
|
End;
|
Конец
тела цикла
|
|
|
ReadLn;
|
Ожидание
нажатия клавиши Enter для завершения
|
End.
|
Конец
программы
|