Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 23, средняя оценка - 4.96
Raphael92
0 / 0 / 0
Регистрация: 12.10.2010
Сообщений: 154
#1

Сложение и умножение матриц - C++

04.01.2011, 15:50. Просмотров 2880. Ответов 4
Метки нет (Все метки)

Даны матрицы A,B,C порядка n. Найти матрицу D=(A+B)C
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
04.01.2011, 15:50     Сложение и умножение матриц
Посмотрите здесь:

Умножение=сложение и сдвиг C++
C++ Сложение, вычитание, умножение
C++ Сложение и умножение матриц, Побочную диоганаль поменять местами
C++ Переделать сложение на умножение
Умножение, сложение и транспонирование матриц C++
C++ Умножение треугольных матриц«Методы обработки разреженных матриц»
Сложение и умножение матриц C++
C++ Ввод, транспонирование, умножение и сложение матриц используя функций
Сложение и вычитание, умножение и деление, сравнение сумм C++
C++ Задано 4 матрицы. Провести сложение, умножение, умножение на число
C++ Матрицы и вектора, сложение и умножение
Нестандартное сложение, вычитание, умножение и деление C++

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
asics
Freelance
Эксперт C++
 Аватар для asics
2842 / 1779 / 144
Регистрация: 09.09.2010
Сообщений: 3,842
04.01.2011, 16:11     Сложение и умножение матриц #2
Вот так сумировать матрицы
C++
1
2
3
for(i=0;i<H;i++)
   for(int j=0;j<W;j++)
       smatrix[i][j]=matrix1[i][j]+matrix2[i][j];
а так перемножать
C++
1
2
3
4
5
6
7
void matrixmult( int **m1, int m1_row, int m1_col, int **m2, int m2_row, int m2_col, int **m3, int m3_row, int m3_col)
{
    for (int k = 0; k < m2_col; ++k)
        for (int i = 0; i < m1_row; ++i)
             for (int j = 0; j < m1_col; ++j)
                   m3[i][k] += m1[i][j] * m2[j][k];
}
ForEveR
Модератор
Эксперт С++
 Аватар для ForEveR
7958 / 4720 / 319
Регистрация: 24.06.2010
Сообщений: 10,525
Завершенные тесты: 3
04.01.2011, 17:41     Сложение и умножение матриц #3
asics, Ты условия забыл указать при которых матрицы можно складывать и при которых можно перемножать.

Складывать можно только в том случае если матрицы имею одинаковый размер.
Перемножать, если кол-во столбцов в первой равно кол-ву строк во второй. Итоговая матрица будет иметь размер : кол-во строк первой * кол-во столбцов второй.
asics
Freelance
Эксперт C++
 Аватар для asics
2842 / 1779 / 144
Регистрация: 09.09.2010
Сообщений: 3,842
04.01.2011, 17:44     Сложение и умножение матриц #4
ForEveR, Ну это же прописная истина, не думаю что ТС этого не знает.Но все равно спасибо за поправку.
silent_1991
Эксперт C++
4949 / 3025 / 149
Регистрация: 11.11.2009
Сообщений: 7,024
Завершенные тесты: 1
04.01.2011, 18:09     Сложение и умножение матриц #5
asics, хм... если я в маткаде (а маткад честно куплен) попробую сложить матрицы разных размеров, он зависнет и упадёт, я напишу в службу поддержки с моей проблемой, а мне разработчики скажут "ну ё-моё, ну нельзя складывать матрицы разных размеров, это, бл..., прописная истина, вы что, не в курсе???", как вы думаете, это нормально прозвучит?
Yandex
Объявления
04.01.2011, 18:09     Сложение и умножение матриц
Ответ Создать тему
Опции темы

Текущее время: 01:26. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru