#include #include #include using namespace std; extern matrix multiplicate(matrix*, matrix*); extern matrix multiplicate(matrix*, float); extern matrix add(matrix*, matrix*); extern matrix substract(matrix*, matrix*); extern matrix invert(matrix*); extern matrix transpose(matrix*); extern float determinant(matrix*); extern matrix get_row(int, matrix*); extern matrix get_column(int, matrix*); extern int is_identical(matrix*, matrix*); extern matrix get_matrix_ex_r_c(int, int, matrix*); extern int random_number(int min, int max); extern string gen_text_matrix(matrix*); extern string export_matrix(matrix*); extern matrix gen_matrix_from_text(int, int, const string&); extern void tokenize_string(const string&, vector&, const string&); template extern string to_string(const T& value); /* * Converts a type into string */ template string to_string(const T& value) { ostringstream oss; oss << value; return oss.str(); } /* * used when generating text matrices * by 'gen_text_matrix()' */ struct TabItem { float num_tabs; // tabs to add float val_one_tab; // the value to add one tab to };