软 件 学 院 综合训练项目报告书
课程名称 离散数学及应用
项目名称 关系的复合和逆运算 专业班级
组 别 成 员 任课教师
目录
关系的复合和逆运算·······················1
1.设计时间··························1 2.设计任务··························1 3.设计内容··························1
3.1问题分析·························1 3.2程序设计·························1 3.3测试与分析························2 3.3.1测试··························2 3.3.2分析··························3 3.4代码···························4 4.总结与展望·························5 参考文献···························6 成员分工···························7
1 设计时间:2015.5.10 2 设计任务:关系的复合和逆关系运算 3 设计内容:设R是一个从集合A到集合B的二元关系,S是从集合B到集合C的二元关系(也可以简单的描述为R:AB,S:BC),则R与S的复合关系R。S是从A到B的关系,并且:R。S={|(xA)(zC)( y)((yB)(xRy)(ySz))} 设R是一个从集合A到集合B的二元关系,则从B到A的关系R-1={|R}称为R的逆关系。 3.1问题分析: 对与关系的复合:设A,B,C是三个集合,R是集合A到集合B的二元关系,S是集合B到集合C的二元关系,则R与S相同部分得整合即为R与S的复合。换句话说,关系的复合是集合与集合间相同部分的统一化整合,它的定义为R。S={|(xA)(zC)( y)((yB)(xRy)(ySz))}。所以,欲求关系的复合。只需前一个集合后域是后一个集合的前域。 对于关系的逆:关系是一种集合,逆关笛卡尔乘积系也是一种集合。换句话说,逆关系的求法可以想为先求两个集合的笛卡尔乘积,后把笛卡尔乘积中的偶序对前后调换位置。 3.2程序设计: 已知所给集合A和B,求A与B的复合 。设集合R={<1,2>,<3,4>,<2,2>} S= {<4,2>,<2,3>,<3,1>} , 则复合为R。S={<1,3>,<3,2>,<2,3>} 则R的逆为R-1={<2,1>,<4,3>,<2,2>} 流程图: 开始 int定义元素 scanf输入 for循环判断 1 开始 int定义元素 scanf输入 for循环判断 if判断 printf输出 printf输出 结束 结束 3.3测试与分析: 3.3.1测试 2 3.3.2分析:用数组存储关系元素 通过for语句实现循环判断和运算 用if判断复合的条件 通过scanf语句进行输入,输入时偶序左右元素分别输入。 用printf最后实现结果的输出 关系的逆:用数组存储元素 通过for语句实现循环的判断 用scanf语句输入元素 最后通过for语句实现元素的调换 用printf输出结果 3 。 3.4 代码:/* Note:Your choice is C IDE */ #include \"stdio.h\" void main() { int a[50],b[50],c[50],d[50],i,j,k,l,p,q; printf(\"欢迎使用关系复合运算程序\\n\"); printf(\"请输入第一个关系的组数(<=50)\\n\"); scanf(\"%d\",&p); printf(\"请输入第一组关系左侧全部的数\\n\"); for(i=0;i\",a[j],d[k]); } printf(\); } * Note:Your choice is C IDE */ #include \"stdio.h\" void main() { int a[50],b[50]; int i,j,n,m; 4 printf(\"欢迎使用关系的逆运算程序\"); printf(\"输入A集合元素的个数\\n\"); scanf(\"%d\",&n); printf(\"请输入A中各个元素\\n\"); for(i=0;i\",b[j],a[i]); } printf(\); } 4 总结与展望: 通过对本次综合训练,我学习到了许多东西,有些知识看似学会了,弄懂了,可是一旦运用到实践中,比如我想用C语言编写程序时,才发现,我学到的知识并不扎实,一些细小的东西,我并没有完全掌握,因此,在日后的学习生活中,我需要更加细心,学习知识要学到其本质。其次,还有要对学过的知识做到及时复习,这次如果在我完全复习完C语言的情况下,一定会完成的更顺利,在以后的学习过程中我一定会做到及时复习,使我的下一份报告更完美。 5 参考文献 [1] 马振华,离散数学引导.北京:清华大学出版社,1992年 [2] 左孝凌,李为鉴,刘永才.离散数学.上海:上海科学技术出版社,1982 [3] 傅彦.离散数学基础及应用.四川:电子科技大学出版社,2000年 [4] 百度百科 6 成员分工 姓名 主要工作 工作量得分 (总分之和为10分) 成绩评定 成绩 教师签字 7