Добавил:
ivanov666
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз:
Предмет:
Файл:Основы компьютерных наук. Ч.1. Учебное пособие
.pdf
A B B A
( ) ( )A B C A B C
AA
()AA
1
n
ij ik kj
k
c a b
A
A
A
mn
nk
AB C
mk
( ) ( )AB C A BC
AB BA
AI IA
( ) AC BC,A B C
()A B C AB AC
( A)B ( ) ( )AB A B
()
ij
Aa
T
ij ji
AA
(A )TTA
Свойства сложения матриц:
o коммутативность:
o ассоциативность:
o сложение с нулевой матрицей:
;
;
;
o существование противоположной матрицы:
умножение матриц подходящего размера – операция вычисления
матрицы C, каждый элемент которой равен сумме произведений
элементов в соответствующей строке первого множителя и
;
столбце второго, то есть
матрице
иными словами, матрица
должно совпадать с количеством строк в матрице B,
обязана быть согласованной с
матрицей B. Таким образом, если матрица
, B -
, то размерность их произведения
. Количество столбцов в
имеет размерность
есть
.
Свойства умножения матриц:
o ассоциативность:
o некоммутативность (в общем случае):
;
;
o произведение коммуникативно в случае умножения с
единичной матрицей:
;
o дистрибутивность:
;
o ассоциативность и коммутативность относительно
умножения на число:
;
умножение на матрицу вектора. По обычным правилам
матричного умножения осуществляется умножение на матрицу
слева вектора-столбца, а также умножение вектора-строки на
матрицу справа;
умножение матрицы A на число заключается в построении
матрицы
;
транспонирование – замена строк исходной матрицы на ее
столбцы:
.
Свойства транспонированных матриц:
o дважды транспонированная матрица равна исходной
матрице:
;
o транспонированная сумма матриц равна сумме
61

()
T T T
A B A B
()
T T T
AB B A
()
TT
AA
det det
T
AA
A
22
11 22 12 21
detA a a a a
Начало / Конец
Действие
Ввод / Вывод
Начало цикла
A
mn
B
nk
AB C
транспонированных матриц:
;
o транспонированное произведение матриц равно
произведению транспонированных матриц, взятых в
обратном порядке:
;
o при транспонировании можно выносить скаляр:
;
o определитель транспонированной матрицы равен
определителю исходной матрицы:
;
определитель.
Пусть матрица
определитель ее равен
- квадратная, тогда, если ее размерность
.
На практике при решении задач матрицы представляются в виде
массивов необходимой размерности. В языках программирования
используются разные способы определения и задания массивов, но
чаще всего при выполнении данных действий в операторах
присутствует слово Array.
Для выполнения различных действий над матрицами
(массивами) чаще всего используются циклы с параметрами. Если
матрица – многомерная, то используется несколько вложенных друг в
друга циклов (табл. 11).
Таблица 11. Элементы блок-схемы для практического занятия № 6
,
Пример
Даны матрицы
). Найти произведение
Решение.
(размерностью
.
62
) и
(размерностью

A
(i 0;i m;i )for
B
(h 0;h ;h )for k
[ ][k] 0ci
B
(j 0;j ; j )for n
[ ][k]ci
[ ][k] a[i][j] [ ][ ]c i b j h
mk
(i 0;i m;i )for
(h 0;h ;h )for k
[ ][k]ci
[ ][k] 0ci
(j 0;j ; j )for n
[ ][k]ci
[ ][k] a[i][j] [ ][ ]c i b j h
1. Исходные данные - A, B. Результат - C.
2. Для решения поставленной задачи необходимо построить
циклический алгоритм с параметром, включающий в себя 3 цикла.
3. Решение задачи состоит в выполнении трех циклов с параметром:
1) цикл, осуществляющий перебор по строкам
матрицы
,
;
2) цикл, осуществляющий перебор по столбцам матрицы
,
. Внутри данного цикла на каждой
его итерации будет задаваться начальное значение
переменной -
;
3) цикл, осуществляющий перебор по столбцам матрицы A и
строкам матрицы
,
. Внутри данного
цикла будет осуществляться приращение переменной
на каждой итерации цикла -
.
4. Блок-схема алгоритма вычисления по формуле из данного задания
приведена на рис. 18.
5. Из рис. 18 видно, что:
1) предусмотрен блок выдачи результатов вычисления;
2) после выполнения вычислений осуществляется переход к
блоку «Конец».
Таким образом, был построен алгоритм вычисления по формуле
на основе принципов алгоритмизации. На рис. 18 приведена блоксхема данного алгоритма. Словесно он описывается следующим
образом:
1. Начало выполнения алгоритма.
2. Ввод исходных данных — значений элементов матриц A и B.
3. Создание результирующей матрицы C (размерностью
4. Начало цикла с параметром
.
).
5. Выполнение тела цикла:
1. Начало цикла с параметром -
1) задание начального значения переменной
:
-
;
2) начало цикла с параметром -
вычисление значения переменной
:
-
.
Цикл выполняется до тех пор, пока верно неравенство
63

j n
im
.
Цикл выполняется до тех пор, пока верно неравенство
Цикл выполняется до тех пор, пока верно неравенство
6. Вывод результатов вычислений — матрицы C.
7. Завершение выполнения алгоритма.
.
.
Рис. 18. Блок-схема циклического алгоритма с параметром для
решения задачи нахождения произведения двух матриц
Вывод — в данном примере было рассмотрено построение
64

№
вар.
Задача
1
Даны две матрицы размерностью
mn
. Найти сумму матриц
2
Даны три матрицы размерностью
mn
. Найти сумму матриц
3
Даны матрицы
A
(размерностью
mn
) и
B
(размерностью
nk
). Доказать, что
AB BA
4
Даны матрица размерностью
mn
и вектор размерностью m.
Найти их произведение
5
Дана матрица
A
размерностью
mn
. Найти
T
ij
A
6
Дана матрица
A
размерностью
mn
. Доказать, что
(A )TTA
7
Дана матрица
A
размерностью
mn
. Найти
T
A
, где
-
скаляр
8
Дана матрица
A
размерностью
22
. Найти ее определитель
9
Дана матрица
A
размерностью
33
. Найти ее определитель
10
Дана матрица
A
размерностью
33
. Доказать,
что
det det
T
AA
циклического алгоритма с параметром для решения задачи с
матрицами. Была построена блок-схема полученного алгоритма и дано
его словесное описание.
Задачи для самостоятельного выполнения (табл. 12)
Задание: по аналогии с приведенным примером, решить задачу
(построить блок-схему, дать словесное описание построенного
алгоритма).
Таблица 12. Варианты заданий для практического занятия № 6
6.7. Практическое занятие № 7. Сложные задачи
с матрицами
Цель занятия — научиться строить алгоритмы для решения
сложных задач с матрицами.
Матрица — математический объект, записываемый в виде
прямоугольной таблицы элементов кольца или поля (например, целых,
65

A
mn
k
min(m;n)k
A
rang A
()rA
mnA
(A) min( ; )r m n
(A) 0r
0A
(A)rn
A
m
действительных или комплексных чисел), которая представляет собой
совокупность строк и столбцов, на пересечении которых находятся её
элементы. Количество строк и столбцов задает размер матрицы.
Пусть дана матрица
размером
. Тогда вычеркиванием
каких-либо строк и столбцов можно вычленить квадратные матрицы
-го порядка, где
. Определители таких подматриц
называются минорами k-го порядка матрицы A.
Ранг матрицы
миноров этой матрицы. Ранг матрицы обозначается
– наибольший порядок отличных от нуля
или
.
Базисный минор – любой отличный от нуля минор матрицы,
порядок которого равен рангу этой матрицы.
Свойства ранга матрицы:
1) ранг матрицы
не превосходит меньшего из ее размеров, т.е.
;
2)
нулю, т.е.
3) для квадратной матрицы n-го порядка
тогда, когда матрица
тогда и только тогда, когда все элементы матрицы равны
(нуль-матрица);
тогда и только
- невырожденная.
В общем случае определение ранга матрицы перебором всех
миноров достаточно трудоемко. Для облегчения этой задачи
используются элементарные преобразования матрицы:
1) вычеркивание нулевой строки (столбца);
2) умножение всех элементов строки (столбца) матрицы на число, не
равное нулю;
3) изменение порядка строк (столбцов) матрицы;
4) прибавление к каждому элементу одной строки (столбца)
соответствующих элементов другой строки (столбца),
умноженных на число, отличное от нуля;
5) транспонирование матрицы.
В результате таких преобразований можно преобразовать
исходную матрицу в единичную. Число единиц на главной диагонали
равно рангу этой матрицы.
Нахождение ранга матрицы позволяет упростить решение
системы линейных уравнений.
Пусть дана система
линейных уравнений с nнеизвестными:
66

11 1 12 2 1 1
21 1 22 2 2 2
1 1 2 2
... ;
... ;
...
... .
nn
nn
m m mn n m
a x a x a x b
a x a x a x b
a x a x a x b
(18)
11 12 1
21 22 2
12
...
...
;
... ... ... ...
...
n
n
m m mn
a a a
a a a
A
a a a
(19)
11 12 1 1
21 22 2 2
12
...
...
.
... ... ... ... ...
...
n
n
m m mn m
a a a b
a a a b
B
a a a b
(20)
rang A rang B
B
rang A rang B n
rang A rang B n
rang A rang B
Совместная система уравнений – система, имеющая хотя бы
одно решение.
Несовместная система уравнений – система, которая не имеет
ни одного решения.
Определенная система уравнений – совместная система,
которая имеет только одно решение.
Неопределенная система уравнений – совместная система,
которая имеет больше одного решения.
Для системы уравнений (18) можно составить основную (A)
[формула (19)] и расширенную матрицу (B) [формула (20)].
Очевидно, что
Теорема Кронекера – Капелли.
Система линейных уравнений совместна тогда и только тогда,
когда ранг матрицы системы A равен рангу расширенной матрицы
этой системы.
Следствия теоремы.
1. Если ранг матрицы совместной системы равен числу переменных,
то система является определенной и имеет единственное решение,
т.е.
2. Если ранг матрицы совместной системы меньше числа
переменных, то система неопределенная и имеет бесконечное
множество решений, т.е.
3. Если
.
.
.
, то система несовместна и решений не
67

Начало / Конец
Действие
Ввод / Вывод
Начало цикла
Условие
1 2 3 4
1 2 3 4
1 2 3 4
2 2 3 6
2 5 .
3 2 1
x x x x
x x x x
x x x x
(21)
A
1 2 2 3 1 2 2 3 6
2 1 1 1 , 2 1 1 1 5 .
3 1 1 2 3 1 1 2 1
AB
имеет.
Для выполнения практического задания № 7 понадобятся
элементы блок-схемы, приведенные в табл. 13.
Таблица 13. Элементы блок-схемы для практического занятия № 7
Пример
Дана система уравнений (21). Составить алгоритм,
определяющий количество решений данного уравнения:
Решение.
1. Исходные данные – система уравнений (21). В рамках решения
поставленной задачи она преобразуется в матрицу
расширенную матрицу В:
2. Для решения поставленной задачи необходимо построить
алгоритм с двумя разветвлениями;
3. Решение задачи состоит:
1) в преобразовании матрицы В в матрицу В’ путем обнуления
элементов под главной диагональю;
и
68

2) в расчете и сравнении рангов матриц А и В’, на основе
которого делается вывод о количестве решений данной
системы уравнений.
4. Блок-схема алгоритма решения данной задачи приведена на
рис.19.
5. Из рис. 19 видно, что:
1) предусмотрен блок выдачи результатов вычисления;
2) после выполнения вычислений осуществляется переход к
блоку «Конец».
Рис. 19. Блок-схема алгоритма определения количества решений
системы уравнений
Таким образом, был построен алгоритм вычисления по формуле
на основе основных принципов алгоритмизации. На рис. 19 приведена
блок-схема данного алгоритма. Словесно он описывается следующим
образом:
1. Начало выполнения алгоритма.
2. Ввод исходных данных — значения элементов матриц A и B.
69

№
вар.
Задача
№
вар.
Задача
1
1 2 3 4
1 3 4
2 3 4
3 2 2 7
20
4 5 1 3
x x x x
x x x
x x x
6
1 2 3 4
1 2 3 4
1 2 3 4
1 2 3 4
1 2 3 4
3 5 4 2
4 9 3 6 5
2 7 8 5
4 5 3
6 7 11 4 1
x x x x
x x x x
x x x x
x x x x
x x x x
2
1 2 3
1 2 3
1 2 3
2 3 2
0
3 4 2
x x x
x x x
x x x
7
1 2 3 4
1 2 3 4
1 2 3 4
1 2 3 4
1 2 3 4
7 5 4 6 2
5 3 6 5
2 3 5
4 5 9
67
x x x x
x x x x
x x x x
x x x x
x x x x
3
1 2 3 4
1 2 3 4
1 2 3 4
2 3 0
24
5 5 4 4
x x x x
x x x x
x x x x
8
1 2 3 4
1 2 3 4
1 2 3 4
1 2 3 4
20
2 3 4 11
5 4 3 2 4
2 3 3 4
x x x x
x x x x
x x x x
x x x x
4
1 2 3 4
1 2 3 4
1 2 3 4
1 2 3 4
2 3 0
24
5 5 4 4
8 7 7 6
x x x x
x x x x
x x x x
x x x x
9
1 2 3 4
1 3 4
1 2 3 4
1 2 3 4
2 4 6
4 4 9 17
3 2 5 11
3 2 3 1
x x x x
x x x
x x x x
x x x x
5
1 2 3 4 5
1 2 3 4 5
1 2 3 4 5
21
3 4 3 4
5 9 8 0
x x x x x
x x x x x
x x x x x
10
1 2 3
1 2 3
1 2 3
1 2 3
1 2 3
4 7 5 2
3 2 3
9 8 7
5 15 6 9
6 7 1
x x x
x x x
x x x
x x x
x x x
Таблица 14. Варианты заданий для практического занятия № 7
3. Преобразование матрицы В в матрицу В’ путем обнуления
элементов, находящихся под главной диагональю матрицы.
4. Расчет рангов матриц А и В’.
5. Проверка условия rang(A) = rang(B’).
1) если условие выполняется, то производится проверка условия
70
Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]
