SaveText.Ru

Без имени
  1. #pragma once
  2. #include <iostream>
  3. #include <vector>
  4. #include <ctime>
  5. using namespace std;
  6.  
  7. class matrix {
  8. public:
  9.         int n;
  10.         int m;
  11.         int n2 = m;
  12.         int m2 = n;
  13.         float **a;
  14.         matrix() {
  15.                 n = 0;
  16.                 m = 0;
  17.                 a = NULL;
  18.         }
  19.         matrix(int n, int m) {
  20.                 this->n = n;
  21.                 this->m = m;
  22.                 a = new float *[n];
  23.                 for (int i = 0; i < n; i++) {
  24.                         a[i] = new float[m];
  25.                         for (int j = 0; j < m; j++)
  26.                                 a[i][j] = 0;
  27.                 }
  28.         }
  29.         void SetRandomMatrix(int n, int m) {
  30.                 this->n = n;
  31.                 this->m = m;
  32.                 n2 = 5;
  33.                 m2 = 4;
  34.                 a = new float *[n];
  35.                 for (int i = 0; i < n; i++) {
  36.                         a[i] = new float[m];
  37.                 }
  38.                 for (int i = 0; i < n; i++) {
  39.                         for (int j = 0; j < m; j++)
  40.                                 a[i][j] = rand() % 10;
  41.                 }
  42.         }
  43.         void GetMatrix() {
  44.                 for (int i = 0; i < n; i++) {
  45.                         for (int j = 0; j < m; j++)
  46.                                 cout << a[i][j] << " ";
  47.                         cout << endl;
  48.                 }
  49.                 cout << endl;
  50.         }
  51.         matrix Transposition(int &n, int &m) {
  52.                 matrix b(m,n);
  53.                 for (int i = 0; i < n; i++) {
  54.                         for (int j = 0; j < m; j++) {
  55.                                 b.setElement(j,i, a[i][j]);
  56.                         }
  57.                 }
  58.                 return b;
  59. /*              for (int i = 0; i < n2; i++) {
  60.                         for (int j = 0; j < m2; j++)
  61.                                 cout << b[i][j] << " ";
  62.                         cout << endl;
  63.                 }*/
  64.                 for (int i = 0; i < n; i++)
  65.                         delete[] a[i];
  66.                 delete[] a;
  67.                 n = n2;
  68.                 m = m2;
  69.                 float **a;
  70.                 a = new float *[n];
  71.                 for (int i = 0; i < n; i++)
  72.                         a[i] = new float[m];
  73.                 for (int i = 0; i < n; i++) {
  74.                         for (int j = 0; j < m; j++) {
  75.                                 a[i][j] = b[i][j];
  76.                         }
  77.                 }
  78.                 for (int i = 0; i < n; i++)
  79.                         delete[] b[i];
  80.                 delete[] b;
  81.         }
  82.         ~matrix() {
  83.                 for (int i = 0; i < n; i++)
  84.                         delete[] a[i];
  85.                 delete[] a;
  86.         }
  87. };

Share with your friends:

Print