Транспонирование матрицы.
Необходимо заменить строки матрицы её столбцами, а столбцы – строками.
1) с использованием дополнительного массива
for i:=1 to N do
for j:=1 to N do
b[i,j]:=a[j,i];
2) без использования дополнительного массива (только для квадратной матрицы)
for i:=1 to N-1 do
for j:=i+1 to N do begin
s:=a[i,j];
a[i,j]:=a[j,i];
a[j,i]:=s;
end;
Умножение матрицы на вектор.
Для вычисления произведения матрицы A(N,N) на вектор B(M) необходимо вычислить: Сi= aij*bj, i=1,…, N
for i:=1 to N do begin
s:=0;
for j:=1 to M do s:=s+a[i,j]*b[j];
c[i]:=s;
end;
for i:=1 to N do write (c[i],' ')
Удалить строку из матрицы.
Требуется удалить строку с заданным номером k. Удалить строку, расположенную на k – м месте, можно сдвинув остальные (k+1), (k+2) и т.д. строки на одну позицию вверх. Число строк уменьшится на одну.
N:=N-1;
for i:=k to N do
for j:=1 to M do a[i,j]:=a[i+1,j];
Включить строку в матрицу.
Включаемая строка задана в виде одномерного массива. Перед включением строки в массив, необходимо его раздвинуть, т.е. передвинуть, начиная с (к+1) строки, на одну позицию вниз. Перемещение строк необходимо начинать с последней. Размер массива увеличивается на одну строку.
for i:=N downto K do
for j:=1 to M do a[i+1,j]:=a[I,j];
for j:=1 to M do a[k,j]=c[j];
n:=n+1;
Перестановка строк матрицы.
С использованием вспомогательной переменной Р перестановка осуществляется во всех столбцах двух строк.
for k:=1 to M do begin
P:=a[I,k];
a[I,k]:=a[j,k];
a[j,k]:=p;
end;