Advertisement
Ravenbvutt

Untitled

Oct 11th, 2017
11,328
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.43 KB | None | 0 0
  1. #include <math.h>
  2. #include <iostream>
  3.  
  4. using namespace std;
  5. int main()
  6. {
  7. const int matrixSize = 3;
  8. int matrixA[matrixSize][matrixSize] = {
  9. {1, 2, 3},
  10. {1, 2, 3},
  11. {1, 2, 3}
  12. };
  13. int matrixB[matrixSize][matrixSize] = {
  14. { 1, 2, 3 },
  15. { 1, 2, 3 },
  16. { 1, 2, 3 }
  17. };
  18. // В 2-х следующих матрицах числа должны быть 0
  19. int matrixAPOW[matrixSize][matrixSize] = {
  20. { 0, 0, 0 },
  21. { 0, 0, 0 },
  22. { 0, 0, 0 }
  23. };
  24. int result[matrixSize][matrixSize] = {
  25. { 0, 0, 0 },
  26. { 0, 0, 0 },
  27. { 0, 0, 0 }
  28. };
  29.  
  30. // Проходимся по рядам
  31. for (int rN = 0; rN < matrixSize; rN++) {
  32.  
  33. // Проходимся по стовпцам
  34. for (int cN = 0; cN < matrixSize; cN++) {
  35.  
  36. // Число i - количество операций додавания (то есть умножения рядок на столбец), равно размерности матрицы
  37. for (int i = 0; i < matrixSize; i++) {
  38.  
  39. // Заполняем матрицу matrixAPOW - матрица A^2
  40. matrixAPOW[rN][cN] += matrixA[rN][i] * matrixA[i][cN];
  41. }
  42. }
  43. }
  44.  
  45. // Тут простое добавление и вывод a - ряд, b - столбец
  46. for (int a = 0; a < matrixSize; a++) {
  47. for (int b = 0; b < matrixSize; b++) {
  48. result[a][b] = matrixAPOW[a][b] + matrixB[a][b];
  49. cout << result[a][b] << " ";
  50. }
  51. cout << endl;
  52. }
  53. system("pause");
  54. return 0;
  55. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement