Лекции.Орг


Поиск:




Категории:

Астрономия
Биология
География
Другие языки
Интернет
Информатика
История
Культура
Литература
Логика
Математика
Медицина
Механика
Охрана труда
Педагогика
Политика
Право
Психология
Религия
Риторика
Социология
Спорт
Строительство
Технология
Транспорт
Физика
Философия
Финансы
Химия
Экология
Экономика
Электроника

 

 

 

 


Построение матриц по заданному виду




 

Одним из пунктов задания является построение матриц определенного вида. То есть нужно найти закон, по которому определяется каждый элемент матрицы. Рассмотрим примеры.

Пример 8. Построить матрицу C размера (6*6) следующего вида:

PROGRAM PR8;

VAR C: ARRAY [1..6, 1..6] OF REAL;

i, j: INTEGER;

BEGIN

FOR i:=1 TO 6 DO

FOR j:=1 TO 6 DO

IF j <= i THEN C[i, j]:=6-i+j

ELSE C[i, j]:=0;

{Вывод на экран матрицы C (см. примеры 3, 4)};

END.

Пояснения к программе: Условие оператора IF определяет элементы, находящиеся на главной и ниже главной диагонали матрицы. При выполнении этого условия элементы матрицы вычисляются по определенному закону. В противном случае элементам присваивается 0.

Пример 9. Построить матрицу C размера (6*6) следующего вида:

PROGRAM PR9;

CONST n = 6;

VAR C: ARRAY [1..n, 1..n] OF REAL;

i, j: INTEGER;

L: BOOLEAN;

BEGIN

FOR i:=1 TO n DO

FOR j:=1 TO n DO BEGIN

L:=((j>=2) AND (j<=5) AND ((i=1) OR (i=6))) OR

((i>=2) AND (i<=5) AND ((j=1) OR (j=6)));

IF L THEN C[i, j]:=0

ELSE C[i, j]:=n;

END;

{Вывод на экран матрицы C (см. примеры 3, 4)};

END.

Пояснения к программе: В данном примере используется переменная L логического типа. Если переменная L принимает значение TRUE, то элементу матрицы присваивается 0. Если переменная L принимает значение FALSE, то элементу матрицы присваивается значение n.

Пример 10. Построить матрицу C размера (6*6) следующего вида:

PROGRAM PR10;

CONST n=6;

VAR C: ARRAY [1..n, 1..n] OF REAL;

i, j: INTEGER;

BEGIN

FOR i:=1 TO n DO

FOR j:=1 TO n DO

IF j >= i THEN C[i, j]:=j-i+1

ELSE C[i, j]:=0;

{Вывод на экран матрицы C (см. примеры 3, 4)};

END.

 

УМНОЖЕНИЕ МАТРИЦ

 

Из курса «Линейной алгебры» известно, что произведение двух матриц возможно тогда и только тогда, когда число столбцов первого множителя равно числу строк второго множителя. В результате умножения получается матрица, у которой столько строк, сколько у первой матрицы, и столько столбцов, сколько их у второй матрицы.

Произведением матрицы В размера (4*6) на матрицу С размера (6*3) является матрица D размера (4*3), элементы которой определяются по формулам: .

Рассмотрим примеры.

Пример 11. Вычислить D=B*C, где матрица В размера (4*6), матрица С размера (6*3).

PROGRAM PR11;

VAR B: ARRAY [1..4, 1..6] OF REAL;

C: ARRAY [1..6, 1..3] OF REAL;

D: ARRAY [1..4, 1..3] OF REAL;

i, j, k: INTEGER;

BEGIN

{Ввести элементы матриц B и C(способы задания матриц приведены в примерах 1, 2)}

FOR i:=1 TO 4 DO

FOR j:=1 TO 3 DO BEGIN

d[i, j]:=0;

FOR k:=1 TO 6 DO

d[i, j]:=d[i, j]+b[i, k]*c[k, j];

END;

{Вывод на экран матрицы D (см. примеры 3, 4)};

END.

Пример 12. Вычислить D=B*C, где В вектор-строка, содержащая 6 элементов, а матрица С размера (6*3).

PROGRAM PR12;

VAR B: ARRAY [1..6] OF REAL;

C: ARRAY [1..6, 1..3] OF REAL;

D: ARRAY [1..3] OF REAL;

i, k: NTEGER;

BEGIN

{Ввести элементы вектора B и матрицы C (способы задания матриц приведены в примерах 1, 2)}

FOR i:=1 TO 3 DO BEGIN

d[i]:=0;

FOR k:=1 TO 6 DO

d[i]:=d[i]+b[k]*c[k, i];

END;

{Вывод на экран матрицы D (см. примеры 3, 4)};

END.

Пояснения к программе: Результатом умножения, в данном случае, будет являться вектор-строка D, содержащая 3 элемента.

 





Поделиться с друзьями:


Дата добавления: 2016-09-06; Мы поможем в написании ваших работ!; просмотров: 926 | Нарушение авторских прав


Поиск на сайте:

Лучшие изречения:

Надо любить жизнь больше, чем смысл жизни. © Федор Достоевский
==> читать все изречения...

2300 - | 1987 -


© 2015-2024 lektsii.org - Контакты - Последнее добавление

Ген: 0.011 с.