ВУЗ:
Составители:
Рубрика:
19
C
[]
i, j : =
∑
j = 1
n
A
[]
i, j * B
[]
j , где i = 1, … n.
НАЧАЛО
КОНЕЦ
C[ i, 1]:= S;
Печать
Ввод n ,m
i:=1, n
j:=1, m
Ввод
матрицы A
Печать
матрицы C
Ввод
вектора B
S:=0;
S:=S+A[ i, j]*B[ j];
НАЧАЛО
КОНЕЦ
C[ 1, j]:= S;
Печать
Ввод n ,m
j:=1, m
i:=1, n
Ввод
вектора B
Печать
матрицы C
Ввод
матрицы A
S:=0;
S:=S+ B[ i] *A[ i, j];
а) б)
Рисунок 12. Блок-схема примера №10: а) – умножение матрицы на
вектор, б) – умножение вектора на матрицу.
Следует заметить, что при умножении вектора на матрицу нужно
вектор рассматривать как вектор-строку В.
C
[]
i, j : =
∑
j = 1
n
B
[]
i * A
[]
i, j , где j = 1, … m.
20
Пример 11 Сложение матриц
Требуется сложить две матрицы А и В.
Матрицы можно складывать только с одинаковым
числом строк и столбцов. Для реализации
программы воспользуйтесь матрицей С, в которой
и будет записан результат выполнения
программы.
C
[]
i, j : = A
[]
i, j + B
[]
i, j ,
где i = 1, … n; j = 1, … m.
Пример 12 Умножение матриц
Требуется перемножить элементы двух
матриц А размером n×m и В размером m×l. В
результате получится матрица С размером n×l.
Произведение двух матриц А*В
определено, когда число столбцов (m) матрицы А
равно числу строк (m) матрицы В. Итак, в
результате пер
емножения получается матрица С,
у которой столько же строк (n), сколько их в
матрице А и столько же столбцов (l), сколько их в
матрице В.
Ошибка!,
где i = 1, … n; j = 1, … l; k = 1, … m.
По определению элемент С[ i, j ] равен скалярному произведению
i-той строки матрицы А на j-тый столбец матр
ицы В.
A =
⎝
⎜
⎜
⎛
⎠
⎟
⎟
⎞
2345
92–34
–1 –5 3 11
B =
⎝
⎜
⎜
⎛
⎠
⎟
⎟
⎞
32
4–1
1–3
25
C =
⎝
⎜
⎜
⎛
⎠
⎟
⎟
⎞
32 14
40 45
249
НАЧАЛО
КОНЕЦ
C[ i, j]:=A[ i, j]+ B[ i, j]
;
Печать
Ввод n ,m
i:=1, n
j:=1, m
Ввод
матрицы A
Печать
матрицы C
Ввод
матрицы B
Р
исунок 13. Блок-
схема примера №11
ABC = A*B
число строк nmn
число столбцов ml l
n
Пример 11 Сложение матриц
C[ i, j ] := ∑ A[ i, j ] * B[ j ], где i = 1, n.
j=1 Требуется сложить две матрицы А и В.
НАЧАЛО
Матрицы можно складывать только с одинаковым
а) НАЧАЛО б) НАЧАЛО Печать числом строк и столбцов. Для реализации
Ввод n ,m программы воспользуйтесь матрицей С, в которой
Печать Печать Ввод и будет записан результат выполнения
Ввод n ,m Ввод n ,m матрицы A программы.
Ввод Ввод Ввод C[ i, j ] : = A[ i, j ] + B[ i, j ],
матрицы A вектора B матрицы B
где i = 1, n; j = 1, m.
Ввод Ввод i:=1, n
вектора B матрицы A Пример 12 Умножение матриц
i:=1, n j:=1, m j:=1, m Требуется перемножить элементы двух
матриц А размером n×m и В размером m×l. В
C[ i, j]:=A[ i, j]+ B[ i, j];
результате получится матрица С размером n×l.
S:=0; S:=0;
Произведение двух матриц А*В
определено, когда число столбцов (m) матрицы А
j:=1, m i:=1, n Печать равно числу строк (m) матрицы В. Итак, в
матрицы C
результате перемножения получается матрица С,
у которой столько же строк (n), сколько их в
S:=S+A[ i, j]*B[ j]; S:=S+ B[ i] *A[ i, j]; КОНЕЦ
матрице А и столько же столбцов (l), сколько их в
матрице В.
C[ i, 1]:= S; C[ 1, j]:= S;
Рисунок 13. Блок-
схема примера №11 A B C = A*B
Печать Печать число строк n m n
матрицы C матрицы C
Ошибка!, число столбцов m l l
где i = 1, n; j = 1, l; k = 1, m.
КОНЕЦ КОНЕЦ
По определению элемент С[ i, j ] равен скалярному произведению
Рисунок 12. Блок-схема примера №10: а) умножение матрицы на i-той строки матрицы А на j-тый столбец матрицы В.
вектор, б) умножение вектора на матрицу.
3 2
⎛ 2 3 4 5 ⎞ ⎛4 ⎞ ⎛ 32 14 ⎞
Следует заметить, что при умножении вектора на матрицу нужно
вектор рассматривать как вектор-строку В. A = ⎜ 9 2 3 4 ⎟ B=
⎜ 1 ⎟ C = ⎜ 40 45 ⎟
⎜
⎝ 1 5 3 11
⎟
⎠ ⎜1 3 ⎟ ⎜
⎝ 2 49 ⎠
⎟
n ⎝2 5 ⎠
C[ i, j ] := ∑ B[ i ] * A[ i, j ], где j = 1, m.
j=1
19 20
Страницы
- « первая
- ‹ предыдущая
- …
- 8
- 9
- 10
- 11
- 12
- …
- следующая ›
- последняя »
