#ifndef MATRIX_OP_H
#define MATRIX_OP_H
typedef struct {
    int rows;
    int cols;
    double **data;
} Matrix;
Matrix* CreateMatrixZero(int rows, int cols);
Matrix* CreateMatrixRand(int rows, int cols);
Matrix* CreateMatrix(int rows, int cols, double startValue);
void FreeMatrix(Matrix *m);
void PrintMatrix(Matrix *m);
Matrix* AddMatrix(Matrix *a, Matrix *b);
Matrix* SubMatrix(Matrix *a, Matrix *b);
Matrix* TransposeMatrix(Matrix *a);
Matrix* MulMatrix(Matrix *a, Matrix *b);
double DetMatrix(Matrix *m);
#endif