欢迎来到天天文库
浏览记录
ID:28496888
大小:75.93 KB
页数:15页
时间:2018-12-10
《离散数学实验c关系的运算(幂运算,闭包运算)》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、实验2关系的运算(1)关系的幂运算输入:集合A,二元关系集合R,幂次n输出:R的n次幂要求:尽量使运算的计算量最小(2)关系闭包的计算输入:集合A,二元关系集合R输出:R的传递闭包t(R)要求:(a)采用Warshall算法(89页)(b)编写代码判断输出t(R)为传递闭包程序代码:#include#include#includeusingnamespacestd;typedefvector>Mat;classRelation{vector2、B;MatC;MatE;MatDflOO];//用来存储矩阵intn;public:voidi叩uts();//将集合存入向量中voidi叩uta();//将读入的失系转化力关系矩阵voidprint();//输出关系矩阵voidmi();intWarshall();};//定义类intn,m;//全局变量,下文中使用voidRelation::inputs(){cout«”输入集合";for(inta;cin»a;){s.push_back(a);if(getchar()==,')break;}}//将集合存入向量中voidRelation::inputa()3、{//将读入的关系转化为关系矩阵inti,j,e,r;for(i=0;iu;for(j=0;j4、=i;}A[e][rM;B[e][r]=l;E[e][r]=l;//C[e][r]=l;//读入关系,将关系对应的矩阵中的位置元素变力1if(getchar()==,,)break;}}voidRelation::print(){for(inti=O;i5、){for(intj=O;jl){for(a=0;a6、[a][b])break;if(b!=s.size())break;}}//检验是否重复if(a==s.size()&&b==s.size()){break;//重复则跳出不再幕乘}for(intk=O;k7、次幂for(inth=O;h
2、B;MatC;MatE;MatDflOO];//用来存储矩阵intn;public:voidi叩uts();//将集合存入向量中voidi叩uta();//将读入的失系转化力关系矩阵voidprint();//输出关系矩阵voidmi();intWarshall();};//定义类intn,m;//全局变量,下文中使用voidRelation::inputs(){cout«”输入集合";for(inta;cin»a;){s.push_back(a);if(getchar()==,')break;}}//将集合存入向量中voidRelation::inputa()
3、{//将读入的关系转化为关系矩阵inti,j,e,r;for(i=0;iu;for(j=0;j4、=i;}A[e][rM;B[e][r]=l;E[e][r]=l;//C[e][r]=l;//读入关系,将关系对应的矩阵中的位置元素变力1if(getchar()==,,)break;}}voidRelation::print(){for(inti=O;i5、){for(intj=O;jl){for(a=0;a6、[a][b])break;if(b!=s.size())break;}}//检验是否重复if(a==s.size()&&b==s.size()){break;//重复则跳出不再幕乘}for(intk=O;k7、次幂for(inth=O;h
4、=i;}A[e][rM;B[e][r]=l;E[e][r]=l;//C[e][r]=l;//读入关系,将关系对应的矩阵中的位置元素变力1if(getchar()==,,)break;}}voidRelation::print(){for(inti=O;i5、){for(intj=O;jl){for(a=0;a6、[a][b])break;if(b!=s.size())break;}}//检验是否重复if(a==s.size()&&b==s.size()){break;//重复则跳出不再幕乘}for(intk=O;k7、次幂for(inth=O;h
5、){for(intj=O;jl){for(a=0;a6、[a][b])break;if(b!=s.size())break;}}//检验是否重复if(a==s.size()&&b==s.size()){break;//重复则跳出不再幕乘}for(intk=O;k7、次幂for(inth=O;h
6、[a][b])break;if(b!=s.size())break;}}//检验是否重复if(a==s.size()&&b==s.size()){break;//重复则跳出不再幕乘}for(intk=O;k7、次幂for(inth=O;h
7、次幂for(inth=O;h
此文档下载收益归作者所有