版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、离散数学实验报告姓名:学号:专业:实验一、真值运算一、实验内容从键盘输入两个命题P和Q的真值,求它们的合取、析取、条件和双条件的真值,并输出。二、实验步骤编写程序,将P,Q以不同真值带入,观察程序运行结果,调式程序。三、实验代码#includeint main()int p,q;char t;while(t)printf(是否运算程序(y/n):n);scanf(%c,&t);if(y=t)printf(输入p,q的真值(0或1):);scanf(%d%d,&p,&q);if(p!=1)&(p!=0)printf(请重新输入p值);scanf(%d,&q);if(q!=1)&(q!=0)pri
2、ntf(请重新输入q值);scanf(%d,&q);if(q=0&p=0)printf(p=1n);printf(q=1n);printf(pq=0n);printf(pq=0n);printf(pq=1n);printf(pq=1n);else if(p=0&q=1)printf(p=1n);printf(q=0n);printf(pq=0n);printf(pq=1n);printf(pq=1n);printf(pq=0n);else if(p=1&q=0)printf(p=0n);printf(q=1n);printf(pq=0n);printf(pq=1n);printf(pq=0n)
3、;printf(pq=0n);else if(p=1&q=1)printf(p=0n);printf(q=0n);printf(pq=1n);printf(pq=1n);printf(pq=1n);printf(pq=1n);continue;if(n=t)break;return 0;四、实验体会求真值运算中,应注意各种连接词的试用方法,以及其在不同情况下的真值。实验二、关系的复合一、实验内容从键盘输入两个关系,求它们的复合关系,并输出。二、实验步骤编写程序,从键盘输入几种不同的二元关系,如果是关系矩阵,则关系矩阵应能够相乘,然后观察它们的复合结果,调试程序。三、实验代码#includein
4、t main()int k,m,n,i,j,sum=0,a1010,b1010,c1010;printf(输入X集合中元素个数:);scanf(%d,&k);printf(输入X中二元关系R的关系矩阵:n);for(i=0;ik;i+)for(j=0;jk;j+)scanf(%d,&aij);printf(输入X中二元关系S的关系矩阵:n);for(m=0;mk;m+)for(n=0;nk;n+)scanf(%d,&bmn); printf(输出X中二元关系R的关系矩阵:n);for(i=0;ik;i+)for(j=0;jk;j+)printf(%d ,aij);if(j=k-1) print
5、f(n);printf(输出X中二元关系S的关系矩阵:n);for(m=0;mk;m+)for(n=0;nk;n+)printf(%d ,bmn);if(n=k-1) printf(n);for(i=0;ik;i+)for(n=0;nk;n+)for(j=0,m=0;jk,m1)sum=1;cin=sum;sum=0;printf(输出RS的关系矩阵:n);for(i=0;ik;i+)for(j=0;jk;j+)printf(%d ,cij);if(j=k-1) printf(n);四、实验体会在求关系的复合中,先求出其关系矩阵,关系矩阵的运算和普通矩阵的运算一样,但是值得注意的是,关系矩阵中
6、只有0和1,所以当大于1时,应该返回1,其余不变。实验三、用沃尔算法求传递闭包一、实验内容从键盘输入二元关系用沃尔算法求出它的传递闭包,并输出。二、实验步骤熟悉沃尔算法,然后将其用程序编写出来,任意输入二元关系,观察程序运行结果,用另一种算法算出结果,与其比较,调试程序。三、实验代码#includeint main()int n,i,j,k,a1010;printf(输入一个X集合中的元素:);scanf(%d,&n);printf(输入一个关系矩阵:n);for(i=0;in;i+)for(j=0;jn;j+)scanf(%d,&aij);for(j=0;jn;j+)for(i=0;in;i
7、+)if(aij=1)for(k=0;k1)aik=1;printf(输出传递闭包:n);for(i=0;in;i+)for(j=0;jn;j+) printf(%d ,aij); if(j=n-1) printf(n);return 0;四、实验体会熟悉并使用沃尔算法,关系矩阵中只有0和1,所以用沃尔算法求得的数若大于1,应该返回1,其余不变。实验四、三种闭包运算一、实验内容从键盘输入一个二元关系,求它的自反闭包,对称闭包,传递闭包,并输出。二、实验步骤编写程序,从键盘输入一个二元关系,当求传递闭包时,试与沃尔算法的传递闭包做比较,观察程序运行结果,调试程序。三、实验代码#include v
8、oid output(int s100); void zifan(int s2100); void duichen(int s2100); void chuandi1(int s2100); void aa(); int s100100,z; int d,n ,i,j; int main()char ch;aa();printf(是否开始新的运算?(Y/N)n); do ch=getchar();while(ch!=N&ch!=Y);if(ch=Y) aa(); return 0; void aa() char c;printf(请输入矩阵的行数(必须小于10)n ); scanf(%d,&n
9、); printf(请输入矩阵的列数(必须小于10)n ); scanf(%d,&d); printf(请输入关系矩阵n); for(i=0;in;i+) printf(n); printf(请输入矩阵的第%d行元素,i+1); for(j=0;jd;j+) scanf(%d,&sij); doprintf(输入对应序号选择算法n1:自反闭包n2:传递闭包n3:对称闭包n); scanf(%d,&z); switch(z) case 1:zifan(s); break; case 2:chuandi1(s);break; case 3:duichen(s); break; printf(您选择
10、继续吗(Y/N)?n); do c=getchar();while(c!=N&c!=Y); while(c=Y); void output(int s100) printf(所求关系矩阵为:n); for(i=0;in;i+) for(j=0;jd;j+) printf(%3d,sij); printf(n); void zifan(int s2100) for(i=0;in;i+) s2ii=1; output(s2); void duichen(int s2100) int s1100100; for(i=0;in;i+) for(j=0;jd;j+) s1ji=s2ij; for(i=0
11、;in;i+) for(j=0;j1) s2ij=1; output(s2); void chuandi1(int s2100) int m100100,a100100,k,h; int t100100; for(i=0;in;i+) for(j=0;jd;j+) aij=0; tij=s2ij; mij=s2ij; for(h=0;hn;h+) for(i=0;in;i+) for(j=0;jd;j+) if(mij=1) for(k=0;kn;k+) if(s2jk=1) aik=1; for(i=0;in;i+) for(j=0;j1) tij=1; output(t); 四、实验体会此
12、程序要求的算法较多,所以应该用函数调用来实现每一个算法的功能,这样易于管理,自反闭包和传递闭包相对简单一些,在编写对称闭包时,并不运用沃尔算法,应注意返回的只有0和1。实验五、邻接矩阵判断可达矩阵一、实验内容从键盘输入一个邻接矩阵,用其判断出它的可达矩阵,并输出。二、实验步骤编写程序,从键盘输入一个邻接矩阵,求出它的可达矩阵,并输出,观察程序运行结果,调试程序。三、实验代码#includevoid main()int a100100,b100100,c100100,d100100,i,j,k,t,p,q,n;printf(请输入邻接矩阵的阶数n);scanf(%d,&n);printf(请输入此邻接矩阵n);for(i=0;in;i+)for(j=0;jn;j+)scanf(%d,&aij);cij=aij;dij=aij;bij=0;for(t=0;tn;t+)for(i=0;in;i+)for(j=0;jn;j+)for(k=0;kn;k+)bij+=cik*akj;for(p=0
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 黑龙江省佳木斯市2026届中考二模物理试题含解析
- 成本实操-私募公司的成本核算
- 2026届江苏省姜堰区六校联考中考联考物理试题含解析
- 2026届湖北省武汉市武昌区C组联盟中考三模物理试题含解析
- 中药熏药护理的国际交流
- 2026届山东省临沂经济开发区四校联考中考物理模拟预测题含解析
- 常德市临澧县2025年四年级数学第二学期期末监测模拟试题(含答案解析)
- 居家养老护理技能与安全知识考试复习题库及解析(附答案)
- ICU护士职业发展与规划
- 2026年中考生物一轮复习:苏科版(2024)七八年级4册知识点背诵提纲
- 2026年高考英语新高考一卷真题卷附答案
- 国开《离散数学》大作业及答案
- 苏教版四年级数学下册第七单元《三角形平行四边形和梯形》测试卷(含答案)
- 健康生活预防癌症智慧树知到期末考试答案2024年
- 《车险基础知识培训》
- 《外科实习作》课件
- 通用电子嘉宾礼薄
- 珠宝回购协议
- 2023年山东财经大学燕山学院教师招聘考试笔试题库及答案
- 钢轨打磨设备及运用 课件 06 电气系统
- 15D503利用建筑物金属体做防雷及接地装置安装图集
评论
0/150
提交评论