Задана матрица вещественных чисел А размерности n×n - Turbo Pascal
Формулировка задачи:
Задана матрица вещественных чисел А размерности n×n. Поменять местами элементы, расположенные над главной и побочной диагоналями с эле-
ментами, расположенными под ними ( первую строку с последней, вторую с
предпоследней и т.д.). Размерность матрицы и значения ее элементов ввести с
клавиатуры.
Решение задачи: «Задана матрица вещественных чисел А размерности n×n»
textual
Листинг программы
for i := 1 to n div 2 do for j := i+1 to n-i do begin t:=A[i,j]; A[i,j]:=A[n-i+1,j]; A[n-i+1,j]:=t; end;
Объяснение кода листинга программы
Данный код выполняет следующие действия:
- Переменная
n
представляет собой размерность матрицыA
. - В цикле
for
переменнойi
от 1 доn div 2
происходит итерация по строкам матрицыA
. - В каждой итерации цикла
for
переменнойj
отi+1
доn-i
происходит итерация по столбцам матрицыA
. - В каждой итерации цикла
for
переменнаяt
присваивается значение элемента матрицыA
с индексамиi
иj
. - После завершения внутренних циклов переменная
t
содержит значение, которое было в соответствующем элементе матрицыA
. - Значение переменной
t
присваивается элементу матрицыA
с индексамиn-i+1
иj
. - Значение переменной
A[n-i+1,j]
присваивается значению переменнойt
. - Значение переменной
A[n-i+1,j]
сохраняется в памяти, но не используется повторно. - Цикл завершается, когда переменная
i
достигает значенияn div 2
. - После завершения цикла переменная
t
не используется повторно.