-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathMatrix.hh
More file actions
72 lines (49 loc) · 1.68 KB
/
Matrix.hh
File metadata and controls
72 lines (49 loc) · 1.68 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
#ifndef MATRIX_HH
#define MATRIX_HH
#include<bits/stdc++.h>
using namespace std;
class Matrix {
//classe per operar amb matrius
private:
//vector que marca quines columnes es fan servir
vector<int> N;
//elements de la matriu
vector<vector<long double> > M;
//dimensions de la matriu
int n, m;
public:
//Constructores
Matrix();
//pre: cert
//post: es crea una matriu amb dimensions (0,0)
Matrix(int _n, int _m, vector<vector<long double> > _M);
//pre: cert
//post: es crea una matriu (_n,_m) amb els elements de _M
Matrix(int _n, bool _h, vector<long double> _M);
//pre: cert
//post: crea la matriu corresponent a un vector de dimensio _n, si _h es true el vector es vertical
//Destructores
~Matrix();
//Modificadores
void modifica_estat_columna(int f, int val);
//pre: 0 <= f < m, val = 0 o 1
//post: l'estat de la columna f passa ser val i s'actualitza mr
//Operadors
Matrix operator!();
//pre: el nombre de columnes actives es n i te rang maxim
//post: retorna la matriu inversa (n,n)
Matrix operator*(const Matrix& mat);
//pre: la matriu mat es (m,k)
//post: retorna la matriu resultant de multiplicar la matriu per mat
Matrix operator-(const Matrix& mat);
//pre: la matriu mat te la mateixa mida
//post: retorna la matriu resultant de restar mat
Matrix operator+(const Matrix& mat);
//pre: la matriu mat te la mateixa mida
//post: retorna la matriu resultant de sumar mat
//Escriptura
void print();
//pre: cert
//post: escriu la matriu per pantalla
};
#endif