偏序关系中盖住关系的求取及格论中有补格的判定_第1页
偏序关系中盖住关系的求取及格论中有补格的判定_第2页
偏序关系中盖住关系的求取及格论中有补格的判定_第3页
偏序关系中盖住关系的求取及格论中有补格的判定_第4页
偏序关系中盖住关系的求取及格论中有补格的判定_第5页
已阅读5页,还剩4页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、离散数学实验报告(2015/ 2016 学年 第 一 学期)题 目:偏序关系中盖住关系的求取及格论中有补格的判定 专 业 学 生 姓 名 班 级 学 号 指 导 教 师 指 导 单 位 计算机学院计算机科学与技术系 日 期 2015年12月15日 评 分 细 则评分项优秀良好中等差遵守机房规章制度上机时的表现学习态度算法思想准备情况程序设计能力解决问题能力课题功能实现情况算法设计合理性算法效能评价报告书写认真程度内容详实程度文字表达熟练程度回答问题准确度简 短 评 语教师签名: 年 月 日评分等级备注评分等级有五种:优秀、良好、中等、及格、不及格偏序关系中盖住关系的求取及格论中有补格的判定一、

2、 实验内容和要求内容:编程实现整除关系这一偏序关系上所有盖住关系的求取,并判定对应偏序集是否为格。要求:对任意给定正整数,利用整除关系求所有由其因子构成的集合所构成的格,判断其是否为有补格。二、实验目的编程实现整除关系这一偏序关系上所有盖住关系的求取,并判定对应偏序集是否为格。三、实验任务 1、求出输入数的所有因子。2、求出整除关系“”的偏序集。3、求出盖住关系 COV A。4、判断是否有补格。5、判断是否为布尔格。四、实验内容 #includeusing namespace std;bool Find(int a, int b,int n) /判断两个元素是否互补int temp;if (a

3、 b)temp = a;a = b;b = temp;int dividend=a, divider=b, remainder=0,min,max;remainder = dividend%divider;while (remainder)dividend = divider;divider = remainder;remainder = dividend%divider;min = a*b / divider; /求得最小公倍数max = divider; /求得最大公约数if (min = n&max = 1)return true;elsereturn false;void main()

4、int n,i,k,t,count=0,j=0;cout n;int a100; /存储带输入整数的所有因子bool b100; /存储对应因子是否有补元for (i = 0; i 100; i+)bi = false; /初始化for (i = 1; i =n;i+)if (n%i = 0)aj+ = i;count = j; /将所有因子个数赋给countcout n 共有 count 个因子 endl;coutA=;for (i = 0; i count; i+) /输出所有因子if(icount-1)cout ai, ;if(i=count-1) cout ai;cout endl;c

5、out偏序关系集合“”=;for(i=0;icount;i+) /判断是否为偏序关系for(j=i;jcount;j+)if(aj%ai=0)coutai,aj; coutendl;coutCOV A=;for(i=0;icount;i+) /判断是否为盖住关系for(j=i;jcount;j+)if(aj%ai=0)if(j-i)=1)coutai,aj;if(j-i)1)t=0; /标记是否符合盖住关系for(k=i+1;kj;k+)if(ak%ai=0)&(aj%ak=0)t+;if(t=0)coutai,aj,;coutendl;for (i = 0; i count; i+) /判断

6、两个元素是否互补for (j = i; j count; j+)if (Find(ai, aj, n)bi = true;bj = true;break; /如果ai找到第一个与之互补的元素就跳出循环int flag = 1; /标记所有由其因子构成的集合所构成的格是否是有补格for (i = 0; i count; i+)if (!bi)flag = 0;if (flag)cout 是有补格 endl; cout 是布尔格 endl;elsecout 不是有补格 endl;cout 不是布尔格 endl;五、测试数据及其结果分析输入数字为36时:输入数字为12时:输入数字为15时:六、调试过

7、程中的问题判断盖住关系时出现如图错误:调试后发现时一句代码的执行顺序错误(加黑下划线为错误处):for(i=0;icount;i+)/判断是否为盖住关系for(j=i;jcount;j+)if(aj%ai=0)if(j-i)=1)coutai,aj;if(j-i)1)t=0;for(k=i+1;kj;k+)if(ak%ai=0)&(aj%ak=0)t+;if(t=0)coutai,aj,;coutendl;修改之后:for(i=0;icount;i+)/判断是否为盖住关系for(j=i;jcount;j+)if(aj%ai=0)if(j-i)=1)coutai,aj;if(j-i)1)t=0;for(k=i+1;kj;k+)if(ak%ai=0)&(aj%ak=0)t+;if(t=0)coutai,aj,;coutendl;正确执行之后为:七、程序设计总结1.掌握了与离散数学理论相关的编程实现思想和方法,重点掌握了偏序关系中盖住关系的求取及格论中有补格的判定。2.通过

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论