русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

Умножение матриц


Дата добавления: 2015-08-31; просмотров: 1356; Нарушение авторских прав


Матрица – математический объект, эквивалентный двумерному массиву. Числа располагаются в матрице по строкам и столбцам. Две матрицы одинакового размера можно поэлементно сложить или вычесть друг из друга.

Если число столбцов в первой матрице совпадает с числом строк во второй, то эти две матрицы можно перемножить. У произведения будет столько же строк, сколько в первой матрице, и столько же столбцов, сколько во второй. При умножении матрицы размером 3х4 на матрицу размером 4x7 мы получаем матрицу размером 3x7. Умножение матриц некоммутативно: оба произведения АВ и ВА двух квадратных матриц одинакового размера можно вычислить, однако результаты, вообще говоря, будут отличаться друг от друга. (Отметим, что умножение чисел коммутативно, и произведения АВ и ВА двух чисел A и В равны.)

Для вычисления произведения двух матриц каждая строка первой почленно умножается на каждый столбец второй. Затем подсчитывается сумма таких произведений и записывается в соответствующую клетку результата. Ниже приведен пример умножения двух матриц, которое в этом случае требует 24-х умножений и 16-и сложений. Вообще, стандартный алгоритм умножения матрицы размером ахb на матрицу размером bхс выполняет abc умножений и а(b-1)с сложений.

Рассмотрим стандартный алгоритм умножения матрицы G размером ахb на матрицу Н размером bxс. Результат записывается в матрицу R размером ахс. Алгоритм вычисления элементов матрицы R содержит три вложенных цикла.

Обратите внимание, что первые два цикла имеют в качестве верхних значений параметров цикла значения а и с (как значения размеров новой матрицы). Третий цикл имеет в качестве верхнего значения параметра цикла значение b (количество элементов в строке первой матрицы и столбце второй матрицы):

 

for (int i=1; i< a ; i++)
for (int j=1; i< c ; j++)
{ R[i][j]=0;
for (int k=1; k< b ; k++)
R[i][j]=R[i][j]+G[i][k]*H[k][j];
} // for j

 

 



<== предыдущая лекция | следующая лекция ==>
Нахождение минимального элемента матрицы и вычеркивание строки и столбца, на пересечении которых он находится | Задание и порядок выполнения работы


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 0.003 сек.