40 lines
804 B
C++
40 lines
804 B
C++
#pragma once
|
|
|
|
//DO NOT CHANGE THIS PART
|
|
typedef int TElem;
|
|
#define NULL_TELEM 0
|
|
|
|
class Matrix {
|
|
|
|
private:
|
|
//TODO - Representation
|
|
TElem* values;
|
|
int* lines;
|
|
int* columns;
|
|
int numberOfLines;
|
|
int numberOfColumns;
|
|
|
|
public:
|
|
//constructor
|
|
Matrix(int nrLines, int nrCols);
|
|
|
|
//returns the number of lines
|
|
int nrLines() const;
|
|
|
|
//returns the number of columns
|
|
int nrColumns() const;
|
|
|
|
//returns the element from line i and column j (indexing starts from 0)
|
|
//throws exception if (i,j) is not a valid position in the Matrix
|
|
TElem element(int i, int j) const;
|
|
|
|
//modifies the value from line i and column j
|
|
//returns the previous value from the position
|
|
//throws exception if (i,j) is not a valid position in the Matrix
|
|
TElem modify(int i, int j, TElem e);
|
|
|
|
void setMainDiagonal(TElem e);
|
|
|
|
|
|
};
|