Azdws

matrix[X]matrix

Mar 10th, 2016
163
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 2.05 KB | None | 0 0
  1. #include <iostream>
  2. #include <conio.h>
  3. #include <cstdlib> // для функции rand
  4.  
  5. using namespace std;
  6.  
  7. int main() {
  8. setlocale (0, "Russian");
  9.  
  10. int n;
  11. cout << "[!] Размерность двумерного массива должна принимать значение не менее '2'\n";   
  12. cout << "    Введите размерность: ";
  13.  
  14. do {
  15. cin >> n;
  16. } while(n < 2);
  17.  
  18. double mtrx1[n][n]; // 1 матрица
  19. double mtrx2[n][n]; // 2 матрица
  20. double mtrx3[n][n]; // результат
  21.  
  22. /*----- Заполнение матриц -----*/
  23. cout << "[Матрица 1] Заполнение:\n";
  24. for (int i = 0; i < n; i++) {
  25.     for (int j = 0; j < n; j++) {
  26.     mtrx1[i][j] = rand()%15;
  27.     }  
  28. }
  29.  
  30. cout << "[Матрица 2] Заполнение:\n";
  31. for (int i = 0; i < n; i++) {
  32.     for (int j = 0; j < n; j++) {
  33.     mtrx2[i][j] = rand()%15;
  34.     }
  35.    
  36. }
  37. /*------------------------------*/
  38.  
  39.  
  40. /*---- Перемножение матриц ----*/
  41. for (int i = 0; i < n; i++) {
  42.     for (int j = 0; j < n; j++) {
  43.         mtrx3[i][j] = 0; // обнуление результата
  44.         for (int z = 0; z < n; z++) { // ввод дополнительного цикла
  45.         mtrx3[i][j] += mtrx1[i][z] * mtrx2[z][j]; // процесс перемножения
  46.         }
  47.     }
  48. }
  49. /*------------------------------*/
  50.    
  51. system("cls"); // очистка экрана
  52.    
  53. /*-------- Вывод матриц --------*/
  54. cout << "Матрица 1:\n";
  55. for (int i = 0; i < n; i++) {
  56.     for (int j = 0; j < n; j++) {
  57.     cout << mtrx1[i][j] << " " ;
  58.     }  
  59.     cout << endl;
  60.    
  61. }
  62.  
  63. cout << "\n";
  64.  
  65. cout << "Матрица 2:\n";
  66. for (int i = 0; i < n; i++) {
  67.     for (int j = 0; j < n; j++) {
  68.     cout << mtrx2[i][j] << " ";
  69.     }
  70.     cout << endl;
  71. }
  72. /*------------------------------*/
  73.  
  74. cout << "\n";  
  75.    
  76. /*------ Вывод результата --------*/
  77. cout << "Результат перемножения матриц:\n";
  78. for (int i = 0; i < n; i++) {
  79.     for (int j = 0; j < n; j++) {
  80.     cout << mtrx3[i][j] << " ";
  81.     }
  82.     cout << endl;
  83. }  
  84. /*------------------------------*/
  85.  
  86. }
Advertisement
Add Comment
Please, Sign In to add comment