Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <math.h>
- #include <iostream>
- using namespace std;
- int main()
- {
- const int matrixSize = 3;
- int matrixA[matrixSize][matrixSize] = {
- {1, 2, 3},
- {1, 2, 3},
- {1, 2, 3}
- };
- int matrixB[matrixSize][matrixSize] = {
- { 1, 2, 3 },
- { 1, 2, 3 },
- { 1, 2, 3 }
- };
- // В 2-х следующих матрицах числа должны быть 0
- int matrixAPOW[matrixSize][matrixSize] = {
- { 0, 0, 0 },
- { 0, 0, 0 },
- { 0, 0, 0 }
- };
- int result[matrixSize][matrixSize] = {
- { 0, 0, 0 },
- { 0, 0, 0 },
- { 0, 0, 0 }
- };
- // Проходимся по рядам
- for (int rN = 0; rN < matrixSize; rN++) {
- // Проходимся по стовпцам
- for (int cN = 0; cN < matrixSize; cN++) {
- // Число i - количество операций додавания (то есть умножения рядок на столбец), равно размерности матрицы
- for (int i = 0; i < matrixSize; i++) {
- // Заполняем матрицу matrixAPOW - матрица A^2
- matrixAPOW[rN][cN] += matrixA[rN][i] * matrixA[i][cN];
- }
- }
- }
- // Тут простое добавление и вывод a - ряд, b - столбец
- for (int a = 0; a < matrixSize; a++) {
- for (int b = 0; b < matrixSize; b++) {
- result[a][b] = matrixAPOW[a][b] + matrixB[a][b];
- cout << result[a][b] << " ";
- }
- cout << endl;
- }
- system("pause");
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement