Шаг 3. Реализация операций над матрицами.

Подробно рассмотрим операцию произведения матриц, сумму и транспонирование - останется реализовать самостоятельно.

Итак у нас есть две матрицы A(а1, а2) и B(b1, b2). Найти произведение матриц и вывести на монитор исходные матрицы и результирующую C(а1, b2) построчно.

Условимся, что здесь и далее в обозначении размеров матриц первый элемент указывает число строк, а второй – число столбцов.

Вспомним алгебру. Во-первых, матрицы можно умножить только в том случае, если число столбцов первой матрицы равно числу строк второй.

На число строк первой матрицы и число столбцов второй ограничений не накладывается. Число строк результирующей матрицы равно числу строк первой, а число ее столбцов – числу столбцов второй матрицы. Приведем пример:

A ( 2,3 ) B ( 3,4 ) C ( 2,4 )

1,1 1,2 1,3   1,1 1,2 1,3 1,4   1,1 1,2 1,3 1,4
2,1 2,2 2,3 X 2,1 2,2 2,3 2,4 = 2,1 2,2 2,3 2,4
        3,1 3,2 3,3 3,4          

Элемент матрицы C(i, j) получается путем поэлементного умножения i-й строки матрицы A на j-й столбец матрицы B. Для приведенного примера результат получается так (смотри заштрихованные ячейки):

C(2,3) = A(2,1)*B(1,3) + A(2,2)*B(2,3) + A(2,3)*B(3,3)

А теперь реализуйте и разберите код выполнения данной операции.

Операция транспонирования заключается в том, что строки и столбцы в исходной матрице меняются ролями.

В транспонированной матрице первым столбцом служит первая строка исходной матрицы, вторым столбцом - вторая строка исходной матрицы и т.д. Например,

 

A(2,3) tA (3,2)

 

 
-1 -2   -1
        -2

При сложении матриц складываются элементы, стоящие на одинаковых местах. Соответственно нужно проверить, чтобы матрицы были одинаковых размеров

+ =
-1   -2  

Если Вы все успели сделать и у Вас осталось еще немного времени: сделайте так, чтобы матрицы не объявлялись глобально, а использовались как параметры в круглых скобках Ваших методов.








Дата добавления: 2015-04-05; просмотров: 501;


Поиск по сайту:

При помощи поиска вы сможете найти нужную вам информацию.

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

Если вам перенёс пользу информационный материал, или помог в учебе – поделитесь этим сайтом с друзьями и знакомыми.
helpiks.org - Хелпикс.Орг - 2014-2024 год. Материал сайта представляется для ознакомительного и учебного использования. | Поддержка
Генерация страницы за: 0.006 сек.