离散数学上机实验报告
更新时间:2023-10-09 13:48:01 阅读量: 综合文库 文档下载
离 散 数 学 实 验 报 告
姓名: 学号: 班级:
离散数学实验报告
实验一 真值计算
实验内容:
从键盘输入两个命题P和Q的真值,求它们的合取、析取、条件和双条件的真值。用C语言实现。
实验源程序和运行结果如下: #include \void main() {
char p,q,t; int p1,q1;
cout<<\输入p,q的真值(F或T)\cin>>p>>q; if(p=='F') p1=0; else p1=1; if(q=='F') q1=0; else q1=1;
//下面进行为运算 if(p1|q1) t='T'; else t='F';
cout<<\析取q为\if(p1&q1) t='T'; else t='F';
cout<<\和取q为\if((!p1)|q1) t='T'; else t='F';
cout<<\条件q为\if(p1==q1) t='T'; else t='F';
cout<<\双条件q为\}
实验二 关系闭包计算
实验内容:
从键盘输入一个关系的关系矩阵,计算其自反闭包、对称闭包和传递闭包,传递闭包要求使用两种算法,即R+和Warshall算法。用C语言实现。
实验源程序运行结果如下: #include
int
a[100][100],b[100][100],c[100][100],d[100][100],I[100][100],i,j,k,n,m,p,q,t;
printf(\请输入关系矩阵的阶数\\n\scanf(\
printf(\请输入此关系矩阵\\n\for(i=0;i for(j=0;j scanf(\ printf(\选择1计算自反闭包...\\n选择2计算对称闭包...\\n选择3用R+计 算传递闭包...\\n选择4用washall计算传递闭包...\\n计算结束后选择0退出\\n\ scanf(\switch(t) { case 1: { for(i=0;i { for(j=0;j if(i==j) I[i][j]=1; else I[i][j]=0; } } for(i=0;i { for(j=0;j b[i][j]=he(a[i][j],I[i][j]),printf(\ printf(\ };break; case 2: { for(i=0;i { } for(j=0;j b[j][i]=a[i][j]; printf(\对称闭包矩阵为\\n\for(i=0;i { for(j=0;j c[i][j]=he(a[i][j],b[i][j]),printf(\ printf(\ } };break; case 3: { for(i=0;i 实验三 计算两结点间长度为m的路的数目 实验内容: 从键盘输入图的邻接矩阵和一正整数m,计算结点两两之间长度为m的路的数目。考虑有向图和无向图。用C语言实现。 实现可达性矩阵。 实验源程序和运行结果如下: #include int a[100][100],b[100][100],c[100][100],d[100][100],i,j,k,t,p,q,n,m; printf(\请输入关系矩阵的阶数\\n\scanf(\ printf(\请输入路的长度\\n\scanf(\ printf(\请输入此关系矩阵\\n\for(i=0;i for(t=0;t for(j=0;j scanf(\c[i][j]=a[i][j]; d[i][j]=a[i][j]; b[i][j]=0; for(i=0;i for(j=0;j } { } for(k=0;k b[i][j]+=c[i][k]*a[k][j]; for(p=0;p } for(k=0,i=0;i for(j=0;j k+=c[i][j]; for(q=0;q c[p][q]=b[p][q]; b[p][q]=0; printf(\结点两两之间长度为%d的路的数目为%d\\n\for(t=0;t for(i=0;i for(j=0;j for(k=0;k b[i][j]+=c[i][k]*a[k][j]; } for(p=0;p for(q=0;q } } printf(\该关系矩阵的可达型矩阵为\\n\for(i=0;i } printf(\ } } 实验四 最优树的构造 实验内容: 从键盘输入一组权值,构造出对应的最优树,列出构造过程。用C语言实现。 实验源程序和运行结果如下: #include int a[100][100],d[100][100]={0}; int i,j,k,min,m,n,p; int b[100][100]={0}; int c[100][100]; printf(\请输入邻接矩阵的阶数:\ scanf(\ for(i=0;i {printf(\请输入带权值矩阵的第%d行,用空格隔开:\ for(j=0;j } for(i=0;i for(j=0;j c[i][j]=a[i][j]; scanf(\ for(k=0;k { min=100; for(i=0;i continue; else if(a[i][j] } m=i,n=j; } a[m][n]=a[n][m]=0; if(b[m][n]==1||b[n][m]==1) continue; d[m][n]=d[n][m]=1; for(i=0;i for(j=0;j b[i][j]=d[i][j]; for(i=0;i for(j=0;j if(b[j][i]==1) for(k=0;k for(i=0;i for(j=0;j if(d[i][j]==1) d[i][j]=c[i][j]; printf(\最小生成树的邻接矩阵为(带权值):\\n\ for(i=0;i {for(j=0;j } printf(\}
正在阅读:
离散数学上机实验报告10-09
第一章血液的一般检验01-15
2018年华北电力大学(北京)英语系448汉语写作与百科知识之中国文化读本考研冲刺五套模拟题05-04
2017年中国电子真空器件行业发展现状分析及市场供需预测(目录)04-14
第一章《从实验到化学》(1)10-19
小学课外文学常识积累100题含答案【精】08-17
德国社会保障制度09-29
综合自然地理 练习题一09-19
- 多层物业服务方案
- (审判实务)习惯法与少数民族地区民间纠纷解决问题(孙 潋)
- 人教版新课标六年级下册语文全册教案
- 词语打卡
- photoshop实习报告
- 钢结构设计原理综合测试2
- 2014年期末练习题
- 高中数学中的逆向思维解题方法探讨
- 名师原创 全国通用2014-2015学年高二寒假作业 政治(一)Word版
- 北航《建筑结构检测鉴定与加固》在线作业三
- XX县卫生监督所工程建设项目可行性研究报告
- 小学四年级观察作文经典评语
- 浅谈110KV变电站电气一次设计-程泉焱(1)
- 安全员考试题库
- 国家电网公司变电运维管理规定(试行)
- 义务教育课程标准稿征求意见提纲
- 教学秘书面试技巧
- 钢结构工程施工组织设计
- 水利工程概论论文
- 09届九年级数学第四次模拟试卷
- 离散
- 上机
- 数学
- 实验
- 报告
- 主题单元教学实施计划模板
- 药品批发企业实施GSP情况内审细则(doc 58页) - 图文
- vCenter - Ops - Mgr - 5 - Proposal中文版 - 图文
- 2014-2015-1中国矿业大学力建学院2015届本科毕业实习和毕业设计的工作安排和要求
- 实习风采--(教学心得)--对待关系户学生教育小议
- 湖山设计方案 - 图文
- ZPW2000A自动闭塞设备故障处理程序流程图(1)
- 市场营销策划实训计划
- 2018-2019华医网乡村医生继续教育作业答案
- 表一特岗教师转正审批表
- 上海高考地理总复习资料
- 2012年浙江省行政执法证培训试卷(C)
- 固体物理总复习
- 提高县级电力公司电压合格率的措施
- 小学的清明节主题活动总结
- 第四章 古汉语词类活用
- 多元化带来现代化社会结构需求 发展公民社会成答案
- 安全监督消项申请书终止书竣工安全评估报告范本
- 2018年04月自学考试01848《公务员制度》历年真题
- 论交通事故中车辆贬值损失之赔偿