欢迎来到天天文库
浏览记录
ID:20525729
大小:68.12 KB
页数:5页
时间:2018-10-13
《二元关系实验c》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、//向量s存放集合//二维向量A存放关系矩阵//将集合存入向量屮//将读入的关系转化为关系矩阵//输出关系矩阵//判断自反,反自反性//判断传递性//判断对称,反对称性//遇到回车结束读入离散实验问题描述:输入集合和关系,转化成一个关系矩阵,并判断该关系有什么性质.源程序代码:#include#include#includeusingnamespacestd;typedefvector>Mat;classRelation{vectors;MatA;public:voidi
2、nputs();voidinputa();voidprint();intself();booltransform();intrelect();J;//定义类intn,m;//全局变量voidRelation::inputs(){cout«n输入集合for(inta;cin»a;){s.push_back(a);if(getchar()==,’)break;}}//将集合存入向量中voidRelation::inputa(){//将读入的关系转化为失系Mi阵cout«"输入关系(用空格隔开)inti,j,e,r;for(i=0;i3、){vectoru;for(j=O;j4、[rl=l;//读入关系,将关系对应的矩阵中的位置元素变为1if(getchar()==,,)break;}}voidRelation::print(){f5、or(inti=O;i6、=O;p7、A[r][y]==A[y][r])++W//遍历矩阵,得到非对角线上的元素与该元素关于对角线对称的元素和等的个数if(A[riryl*A[yl[rl==O)++m;//遍历矩阵,得到非对角线上的元素与该元素关于对角线对称的元素相乘为0的个数}}if(n==s.size()*(s.size()-l)/2&&m!=s.size()*(s.size()-l)/2)//若return1;if(n==s.size()*(s.size()-1)/2&&m==s.size()*(s.size()-1)/2)return2;//既是对称的又是反对称的if(n!=s.size8、()*(s.size()-l)/2&&m==s.size()*(s.size()-l)/2)return3;return4;voidmain(){Relationw;w.inputs();w.inputa();w.print();if(w.self()==0)cout«"反自反"《endl;else{if(w.self()==l)cout«”自反'’<9、”反对称n«endl;cout«”对称”《endl;
3、){vectoru;for(j=O;j4、[rl=l;//读入关系,将关系对应的矩阵中的位置元素变为1if(getchar()==,,)break;}}voidRelation::print(){f5、or(inti=O;i6、=O;p7、A[r][y]==A[y][r])++W//遍历矩阵,得到非对角线上的元素与该元素关于对角线对称的元素和等的个数if(A[riryl*A[yl[rl==O)++m;//遍历矩阵,得到非对角线上的元素与该元素关于对角线对称的元素相乘为0的个数}}if(n==s.size()*(s.size()-l)/2&&m!=s.size()*(s.size()-l)/2)//若return1;if(n==s.size()*(s.size()-1)/2&&m==s.size()*(s.size()-1)/2)return2;//既是对称的又是反对称的if(n!=s.size8、()*(s.size()-l)/2&&m==s.size()*(s.size()-l)/2)return3;return4;voidmain(){Relationw;w.inputs();w.inputa();w.print();if(w.self()==0)cout«"反自反"《endl;else{if(w.self()==l)cout«”自反'’<9、”反对称n«endl;cout«”对称”《endl;
4、[rl=l;//读入关系,将关系对应的矩阵中的位置元素变为1if(getchar()==,,)break;}}voidRelation::print(){f
5、or(inti=O;i6、=O;p7、A[r][y]==A[y][r])++W//遍历矩阵,得到非对角线上的元素与该元素关于对角线对称的元素和等的个数if(A[riryl*A[yl[rl==O)++m;//遍历矩阵,得到非对角线上的元素与该元素关于对角线对称的元素相乘为0的个数}}if(n==s.size()*(s.size()-l)/2&&m!=s.size()*(s.size()-l)/2)//若return1;if(n==s.size()*(s.size()-1)/2&&m==s.size()*(s.size()-1)/2)return2;//既是对称的又是反对称的if(n!=s.size8、()*(s.size()-l)/2&&m==s.size()*(s.size()-l)/2)return3;return4;voidmain(){Relationw;w.inputs();w.inputa();w.print();if(w.self()==0)cout«"反自反"《endl;else{if(w.self()==l)cout«”自反'’<9、”反对称n«endl;cout«”对称”《endl;
6、=O;p7、A[r][y]==A[y][r])++W//遍历矩阵,得到非对角线上的元素与该元素关于对角线对称的元素和等的个数if(A[riryl*A[yl[rl==O)++m;//遍历矩阵,得到非对角线上的元素与该元素关于对角线对称的元素相乘为0的个数}}if(n==s.size()*(s.size()-l)/2&&m!=s.size()*(s.size()-l)/2)//若return1;if(n==s.size()*(s.size()-1)/2&&m==s.size()*(s.size()-1)/2)return2;//既是对称的又是反对称的if(n!=s.size8、()*(s.size()-l)/2&&m==s.size()*(s.size()-l)/2)return3;return4;voidmain(){Relationw;w.inputs();w.inputa();w.print();if(w.self()==0)cout«"反自反"《endl;else{if(w.self()==l)cout«”自反'’<9、”反对称n«endl;cout«”对称”《endl;
7、A[r][y]==A[y][r])++W//遍历矩阵,得到非对角线上的元素与该元素关于对角线对称的元素和等的个数if(A[riryl*A[yl[rl==O)++m;//遍历矩阵,得到非对角线上的元素与该元素关于对角线对称的元素相乘为0的个数}}if(n==s.size()*(s.size()-l)/2&&m!=s.size()*(s.size()-l)/2)//若return1;if(n==s.size()*(s.size()-1)/2&&m==s.size()*(s.size()-1)/2)return2;//既是对称的又是反对称的if(n!=s.size
8、()*(s.size()-l)/2&&m==s.size()*(s.size()-l)/2)return3;return4;voidmain(){Relationw;w.inputs();w.inputa();w.print();if(w.self()==0)cout«"反自反"《endl;else{if(w.self()==l)cout«”自反'’<9、”反对称n«endl;cout«”对称”《endl;
9、”反对称n«endl;cout«”对称”《endl;
此文档下载收益归作者所有