SaveText.Ru

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

Share with your friends:

Print