自用矩阵操作

来源:互联网 发布:mac下方图标隐藏 编辑:程序博客网 时间:2024/06/10 03:16
#ifndef _MATRIX_H_#define _MATRIX_H_#define T 8#include<cstring>class Matrix{public:Matrix();Matrix operator *(Matrix &m);Matrix operator %(int mod);int getAns(int c, int r);void setAns(int c, int r, int x);private:int data[T][T];};Matrix::Matrix(){memset(data, 0, sizeof(data));}Matrix Matrix::operator *(Matrix &m){Matrix M;for (int i = 0; i < T; i++){for (int j = 0; j < T; j++){for (int k = 0; k < T; k++){M.data[i][j] += (data[i][k] * m.data[k][j]);}}}return M;}Matrix Matrix::operator %(int mod){Matrix M(*this);for (int i = 0; i < T; i++){for (int j = 0; j < T; j++){M.data[i][j] %= mod;}}return M;}int Matrix::getAns(int c, int r){return data[c][r];}void Matrix::setAns(int c, int r, int x){data[c][r] = x;}#endif 

0 0