Матричная алгебра

В данной лабораторной работе рассматриваются действия, совершаемые над матрицами.

Задача: найти произведение двух матриц.

 и  .

Решение: Вычислим произведения АВ. Согласно правилу умножения матриц элемент матрицы АВ, стоящий в i-ой строке и j-м столбце (сij) равен сумме произведений элементов i-й строки матрицы А на соответствующие элементы j- го столбца матрицы В. Так, например,

С23=(-1)*3+(-2)*6+(-4)*9=-51

Подсчитав таким образом все элементы матрицы АВ, находим:

.

Мы видим на этом примере, что произведение матриц зависит от порядка сомножителей.

Примеры решений задач

1. Составить программу нахождения произведения двух матриц А и В размером 2х3 и 3х3 соответственно.

Элементы результирующей матрицы С (размером 2х3) определяются по формуле:, где n- число строк матрицы А; m – число столбцов матрицы А и число строк матрицы В;  p – число столбцов В. В общем случае результирующая матрица С имеет n строк и p столбцов.

Program UM;

Var

            A,C,:aray [1..2,1..3] of real;

            B:aray [1...3,1..3] of real;

            I,J,K: integer;

Begin

            For I:=1 to 2 do

                        For J:=1 to 3 do

                                   Read (A[I,J]);

            For I:=1 to 3 do

                        For J:=1 to 3 do

                                   Read (B[I,J]);

            For I:=1 to 2 do

                        For J:=1 to 3 do

                                   Begin

                                               C[I,J]:=0;

                                               For K:=1 to 3 do

                                                           C[I,J]:=C[I,J]+A[I,K]*B[K,J];

 

                        End;

Begin

Writeln(‘Массив С’);

                        For J:=1 to 3 do

                                   Write (C[I,J]:12:5)

            End

End.

2. Составьте программу вычисления скалярного произведения двух векторов U и V, состоящих из четырех элементов каждый, по формуле:

. Вычислите длину вектора .

Program SP;

Type

N:1..4;

Var

S,DV:real;

            U,V:array [N] of real;

            I:N;

Begin

For I:=1 to 4 do

                        Read (V[I]);

For I:=1 to 4 do

                        Readln (U[I]);

            S:=0;

            DV:=0;

            For I:=1 to 4 do

                        Begin

                                   S:=S+U[I]*V[I];

                                   DV:=DV+U[I]*V[I];

                        End;

            DV:=sqrt(DV);

            Writeln (‘Скалярное произведение=’,S);

            Writeln (‘Длина вектора=’);DV

End.

Список задач

1.      Даны матрицы А и В размера k´m и m´l соответственно. Найти произведения АВ.

2.      Дана квадратная матрица порядка n. Получить матрицу А2.

3.      Даны матрицы А и В порядка n. Получить матрицу АВ-ВА.

4.      Дана квадратная матрица А порядка n. Получить матрицу АВ; элементы матрицы В вычисляются по формуле:

а) dij=1/(i+j-1);б)

в)

5.      Даны квадратная матрица А порядка n и вектор с n элементами. Получить вектор:

а) Ab;

б) A2b;

в) (A-E)b, где Е - единичная матрица порядка n.

6.      Дана квадратная матрица порядка n. Получить вектор Ab, где вектор b- вектор, элементы которого вычисляются по формуле:

а) bi=1/(i2+2); б)

7.      Даны квадратная матрица А порядка n и вектор х и у с n элементами. Получить вектор А(х+у).

8.      Даны квадратная матрица А, В, С порядка n. Получить матрицу (А+В)С.

9.      Даны квадратные матрицы А и В порядка n. Получить матрицу
А(В–Е)+С, где Е- единичная матрица порядка n, а элементы матрицы С вычисляются по формуле: cij=1/(i+j)     , i,j=1, 2, ..., n.

10.  Дана матрица А размера m´n. Получить транспонированную матрицу А (m´n).

11.  Дана матрица А:

а) размера m´m;

б) размера m´n;

Получить матрицу АА (m´m).

12.  След квадратной матрицы равен сумме элементов, расположенных на главной диагонали. Даны квадратная матрица порядка m, натуральное число n. Вычислить следы матриц А, А2, ..., Аn.

13.  Даны целые числа А1, А2, А3.  Получить  целочисленную  матрицу  [Bij], i, j = 1, 2, 3, для которой Bij=Ai-3·Aj.

14.  Получить [Aij], i=1, 10,  j=1, 12,  где Aij=i+2·j.

15.  Получить [Aij], i=1, n, где  Aij=1/(i+j).

16.  Даны натуральное число n, действительная матрица n´9. Найти среднеарифметическое:

а) каждого из столбцов;

б) каждого из столбцов, имеющих четные номера.

17.  Дана действительная матрица n´m. Определить числа B1, ..., Bm, равные соответственно:

а) сумме элементов строк;

б) произведениям  элементов строк;

в) наименьшим значениям элементов строк;

г) значениям среднеарифметических элементов строк;

д) разностям наибольших и наименьших значений строк.

18.  Дана матрица n´n. Получить последовательность главной диагонали.

19.  Дана матрица 6´9. Найти среднеарифметическое наибольшего и наименьшего значений ее элементов

20.  Дана матрица n´m. Найти сумму наибольших значений элементов ее строк.

21.  В данной действительной квадратной матрице n´n  найти сумму элементов строки, в которой расположен элемент с наибольшим значением. Предполагается, что такой элемент единственный.

Hosted by uCoz