版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、离散数学实验报告专业班级:12级计算机本部一班 姓名:鲍佳珍 学号: 201212201401016 实验成绩:1【实验题目】命题逻辑实验四2【实验目的】 掌握用计算机求集合的交、并、差和补运算的方法。3【实验内容】编程实现集合的交、并、差和补运算。4、【实验要求】c或c语言编程实现5. 【算法描述】(1)用数组a,b,c,e表示集合。假定a=1,3,4,5,6,7,9,10,b=2,,3,4,7,8,10, e=1,2,3,4,5,6,7,8,9,10,输入数组a,b,e(全集),输入数据时要求检查数据是否重复(集合中的数据要求不重复),要求集合a,b是集合e的子集。以下每一个运算都要求先将
2、集合c置成空集。(2)二个集合的交运算:ab=x|xa且xb把数组a中元素逐一与数组b中的元素进行比较,将相同的元素放在数组c中,数组c便是集合a和集合b的交。c语言算法:for(i=0;im;i+)for(j=0;jn;j+)if(ai= =bj) ck+=ai;(3)二个集合的并运算:ab=x|xa或xb把数组a中各个元素先保存在数组c中。将数组b中的元素逐一与数组a中的元素进行比较,把不相同的元素添加到数组c中,数组c便是集合a和集合b的并。c语言算法:for(i=0;im;i+)ci=ai;for(i=0;in;i+)for(j=0;jm;j+)if(bi= =cj) break;if
3、(j= =m) cm+k=bi;k+;(4)二个集合的差运算:a-b=x|xa且xb将数组a中的元素逐一与数组b中的元素进行比较,把数组a与数组b不同的元素保存在数组c中,数组c便是集合a和集合b的差a-b。c语言算法:for (j=0;jm;j+)for (i=0;in;i+)if (aj= =bi)ck=aj;k+;break;if (j= =n) ck=ai; k+;(5)集合的补运算: a=b-a=x|xb且xa将数组e中的元素逐一与数组a中的元素进行比较,把不相同的元素保存到数组c中,数组c便是集合a关于集合e的补集。求补集是一种特殊的集合差运算。c语言算法:k=0;for (i=0
4、;im;i+)for (j=0;jn;j+)if (bi= =aj)break; if (j=n)ck=bi; k+;6. 【源程序(带注释)】#includeint main()int a80,b80,c80,e80;int m,n,k,l,i,j,p,q,o;l=1;while(l)printf( #欢迎使用集合运算软件#n);printf(#请输入您要输入的a数组内存放的数字的数目:);scanf(%d,&m); /输入一个数组内需要存放的数字的数目printf(#请输入集合a中的元素:);scanf(%d,&a0);for(i=1;im;i+)scanf(%d,&ai);for(j=0
5、;ji;j+)if(ai=aj)printf(#您的输入有误!集合中的元素不能相同!n);printf(#请重新输入:); for(i=0;im;i+)scanf(%d,&ai); /判断数组内是否存在重复的数字,若有,能重新输入printf(#请输入您要输入的b数组内存放的数字的数目:);scanf(%d,&n);printf(#请输入集合b中的元素:);scanf(%d,&b0);for(i=1;in;i+)scanf(%d,&bi);for(j=0;ji;j+)if(bi=bj)printf(#您的输入有误!集合中的元素不能相同!n);printf(#请重新输入:); /重新输入集合bf
6、or(i=0;in;i+)scanf(%d,&bi);printf(#请输入您要输入的e数组内存放的数字的数目:); /输入b集合的元素数scanf(%d,&o);printf(#请输入集合e中的元素:);scanf(%d,&e0);for(i=1;io;i+)scanf(%d,&ei);for(j=0;ji;j+)if(ei=ej)printf(#您的输入有误!集合中的元素不能相同!n);printf(#请重新输入:); /重新输入集合efor(i=0;io;i+)scanf(%d,&ei);k=0;for(i=0;im;i+)for(j=0;jn;j+)if(ai=bj)ck+=ai;p=
7、k;printf(#a数组与b数组的交集为);for(k=0;kp;k+)printf(%d ,ck);printf(n); /交集的代码k=0;for(q=0;qp;q+)cq=0; /将c数组置空for(i=0;im;i+)ck=ai;k+; for(i=0;in;i+)for(j=0;jk;j+)if(bi=cj) break;if(j=k-1)ck=bi;k+; /并集的代码p=k; /确定c数组当前的数目,便于下一次置空printf(#a数组与b数组的并集为);for(k=0;kp;k+)printf(%d ,ck);printf(n);k=0;for(q=0;qp;q+)cq=0;
8、for(j=0;jm;j+)for (i=0;in;i+)if (aj=bi)break;if(j=n-1) ck=ai;k+; /差运算的代码p=k;printf(#a数组与b数组的差运算集为);for(k=0;kp;k+)printf(%d ,ck);printf(n);k=0;for(q=0;qp;q+)cq=0;for (i=0;io;i+)for (j=0;jm;j+)if (ei=aj)break; if (j=m-1)ck=ei;k+; /补运算的代码p=k;printf(#a数组与b数组的补运算集为);for(k=0;kp;k+)printf(%d ,ck);printf(nn);printf(#您是否还想继续计算。是请输入
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 电梯维修合同书
- 商铺装饰装修合同范本
- 舞蹈排练室租赁合同
- 健身房承包经营管理合同范文
- 建设工程设计合同民用
- 房地产分销合同
- 叶县年食用植物油肥料供货合同
- 会计咨询服务履约承诺书
- 航空航天工程垫资承诺
- 母公司与子组织合作协议范本
- 2024年医院感染预防措施(卫生、防护、隔离、抗菌)等知识考试题库及答案(全优)
- 玻璃纤维杆投资项目可行性研究报告
- 太极拳文化与养生智慧树知到期末考试答案章节答案2024年宁波财经学院
- 妙手传译手语 知到智慧树网课答案
- 2024年公务员(国考)之行政职业能力测验真题附答案【满分必刷】
- 专练06 九年级下册消灭易错专练50题【解析版】-备战2024年中考道德与法治考试易错题
- “合肥十校”联考2024届中考三模化学试题含解析
- 超星尔雅学习通《中国古建筑欣赏与设计(湖南大学)》2024章节测试答案
- 2024年辽宁省新中考冲刺密卷语文试卷1
- 2023-2024学年江苏省徐州市云龙区中考押题数学预测卷含解析
- MOOC 礼仪文化与有效沟通-北京理工大学 中国大学慕课答案
评论
0/150
提交评论