集合运算离散数学实验报告.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
离散数学 课程实验报告 题目:集合运算 学生姓名: 学生学号: 专业班级: 完成日期: 实验目的 熟悉集合的交,并,差,对称差和直积等集合运算; 使用C++语言工具解决集合的运算问题; 实验内容 编写程序实现集合的交,并,差,对称差和直积集合运算 三.实验过程 算法分析 集合的交:使用两个字符串数组A和B存储两个集合,依 次遍历两个数组,找到相同的元素,就输出该元素,直到 两个数组都遍历完毕为止,输岀的所有的元素就是这两个 集合的交; 集合的并:依次遍历这两个数组,在第二个数组中,若找 到与第一个数组中的某个元素相同的元素时,在第二个数 组中删除该元素,最后输出第一个数组和第二个数组的所 有元素,得到的结果即集合的并; 集合的差:遍历数组A和B,在数组A中,若找到与B中某 一元素相同的元素,则在数组A中删除该元素,最后一次 输出数组A即可; 集合的对称差:定义一个新的字符串数组C,将A的值全部 赋给C (C二二A)?。遍历数组A和B,若在A中找到与B中 某一元素相同的元素,则在A中删除该元素;遍历C与B, 若在B中找到与C中某一元素相同的元素,则删除B中的 该元素,最后依次遍历输出数组A和B即可; 集合的直积:从数组A的第一个元素开始,每输出A中的 一个元素的同时,对应输出B中所有的元素,中间用〈,〉连 接,直到A中所有元素都输出完毕。最后得到的序列便是A 和B的直积 流程图1=0 j=0ointNum?jcPoinrNum?Y输人屯皿 :输人bfildFunl(a,b);Fun2(atbi; 流程图 1=0 j=0 ointNum? jcPoinrNum? Y 输人屯皿 :输人bfild Funl(a,b); Fun2(atbi; Fun:3(cvW; Fun^arb); FunS(qb) Z1Z 厂 1 1 实验数据和分析 测试数据: 请输入第一个集合: a b 1 4 请输入第二个集合: b g 4 两个集合的交为:b 4 两个集合的并为:a b 1 4 g 第一个集合-第二个集合为:a 1 两个集合的对称差为:a 1 g 两个集合的直积为:a, b a, g a, 4 b, b b, g b, 4 l,b l,g 1,4 4, b 4, g 4, 4 按照实验的算法设计程序,实现集合的各种基本运算。 实验代码 #includciostrcam〉 using namespace std; #includcstdlib.h char[]) chart]) char []) char []) char[])void funl(char[], void fun2(char[], void fun3 (char[], void fim4 (char[], void fun5(char[], void Del etc (cha讥],i nt n) int main () char[]) chart]) char []) char []) char[]) char a[20], b[20], c; while (1) cin. sync(); cout ? 〃请输入集合一:\nz,; gets_s(a); cout 请输入集合二:\n〃; gets_s (b); cout ? 请选择:\n〃; C?集合的差 D.集合的cout ? A.集合的交 B.集合的并 对称差 E.集合的直积 C?集合的差 D.集合的 cin c; if (c 二二’F) return 0; cout ? 〃其结果为:\n〃; switch (c) case A:funi (a, b) ; break; break; break; break; break;casc,B : fun2 (a, b) case5 C : fun3 (a, b) case D : fun4 (a, b) case E‘ : fun5 (a, b) break; break; break; break; default:cout 〃输入有误。〃 cout endl; } }; void [ Delet( 3(char a[], int n) int si = strlen(a); for f (int i 二 n; i 〈 sl-1; i++) t a[i] =a[i + 1]; }; a.[s^ 1 - 1] 二\0; }; void funl(char a[], char b[]) { int si 二 strlen(a); int s2 = strlen(b); int i 二 0, j二0; for (i = { 0; i si; i++) for (j = 0; j s2; j++) { if (a[i] == b[j]) cout 〈〈 a[i]〈〈

文档评论(0)

ggkkppp + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档