{
matrix m(p.rows,p.cols); if(p.cols!=q.rows) return m;
for(int r=1;r<=p.rows;r++) for(int c=1;c<=p.cols;c++) { int s=0; for(int i=1;i<=p.cols;i++) s+=p(r,i)*q(i,c); m.SetElem(r,c,s); } return m; }
/*****************************************************************************/
// set.cpp: implementation of the set class. #include \ set::~set() { }
/*****************************************************************************/
/*
函数名称:print 功能描述:显示复数 修改记录: */
void set::print() {
cout<<\
for(int i=0;i /*****************************************************************************/ /* 函数名称:additem 功能描述:增加集合元素 修改记录: */ errcode set::additem(int elem) { for(int i=0;i /*****************************************************************************/ /* 函数名称:operator & 功能描述:声明重载运算符&,判断某一整数是否属于某一集合 修改记录: */ bool operator &(int elem,set set1) { for(int i=0;i /*****************************************************************************/ /* 函数名称:operator == 功能描述:声明重载运算符==,判断两个集合是否相等 修改记录: */ bool operator ==(set set1,set set2) { if(set1.card !=set2.card ) //两个集合个数不等,必不相等 return false; for(int i=0;i /*****************************************************************************/ /* 函数名称:operator != 功能描述:声明重载运算符!=,判断两个集合是否不等 修改记录: */ bool operator !=(set set1,set set2) { if(set1== set2) return false; else return true; } /*****************************************************************************/ /* 函数名称:operator * 功能描述:声明重载运算符*,求两个集合的交 修改记录: */ set operator *(set set1,set set2) { set res; for(int i=0;i //取set1中的每一个元素判断是否属于set2,若属于则加入到res中 return res; } /*****************************************************************************/ /* 函数名称:operator + 功能描述:声明重载运算符+,求两个集合的并 修改记录: */ set operator +(set set1,set set2) { set res=set1; for(int i=0;i return res; } /*****************************************************************************/ /* 函数名称:operator < 功能描述:声明重载运算符<,判断某一集合是否为另一集合的纯子集 修改记录: */ bool operator <(set set1,set set2) { if(set1.card /*****************************************************************************/ /* 函数名称:operator <= 功能描述:声明重载运算符<=,判断某一集合是否为另一集合的子集 修改记录: */ bool operator <=(set set1,set set2) { if(set1.card >set2.card ) return false; for(int i=0;i /*****************************************************************************/ #include #include \ #include \ #include \ #include \ void jiemian(); void tuichu(); void complexcompute(); void rationalcompute(); void matrixcompute(); void setcompute(); /************************************************************************/ /* main函数 */ /************************************************************************/ int main() { jiemian(); return 0; } /************************************************************************/ /* 主界面函数,实现了界面及函数调用 */ /************************************************************************/ void jiemian() { int i; cout< cout<<\ cout<<\ *\ cout<<\欢迎进入用运算符重载实现特殊计算器程序 \ cout<<\ *\ cout<<\ while(i) { cout<