离散数学实验报告:建立关系矩阵实验


    **大学离散数学实验报告 建立关系矩阵实验 姓名: **** 专业: 软件工程 班级: 3 学号: 1325116025 日期: 20**.10月7日 1、 摘要:建立关系矩阵实验的目的是理解并掌握关系的矩阵表示方法、为用序偶集合表示的关系建立相应的关系矩阵。学会用所学过的程序设计语言编程,解决关系矩阵的自动建立问题。实验的内容是用二维数组或向量存储关系矩阵,根据输入的用序偶集合表示的关系,建立相应的关系矩阵。用建立二维数组的方法构造关系矩阵。分别输入两个用序偶集合表示的关系作为实验数据,然后建立两个数组之间的关系,得到一个关系矩阵。关系矩阵一开始初始化为0,建立成功的关系体现为1。最后得到一个完整的矩阵。 一.导言 2、 1) 问题的描述。 实验的目标是如何为用序偶集合表示的关系建立相应的关系矩阵,解决关系矩阵的自动建立问题。 2) 拟采用的方法 用建立二维数组的方法来解决建立关系矩阵。首先建立两个数组分别代表行和列,然后建立一个新的二维数组,将其初始化为零,集合之间的关系对应真值表,所以在这个二维数组中两个集合的关系就被表示为1,然后就相应地建立了两个集合的关系矩阵。 二.实验过程 1) 算法思想流程 1.申请两个字符型数组用来储存集合元素。 2.建立二维数组然后初始化为0. 3.判断关系是否存在,存在则赋值为1。 4输入数值然后输出关系矩阵。 2)程序流程图 开始 P=0 switch P=0 P<N Arr[p] P=p+1 P<M P=p+1 Arr[p] P=0 P<M P=p+1 q=0 q=q+1 q<N arr[p][q] i=0 q=0 j j>=’a’&&j<=’z’ q<M q=q+1 arr[(i-’0’)-1][(j-’0’-’0’)-1]=1 j>=’a’&&j<=’z’ p=0 j>=’a’||j<=’z’ arr[(i-’0’)-1][(j-’0’)-1]=1 p=i-’0’-’0’; q=j-’0’-’0’; arr[p-1][q-1] arr[(i-’0’-’0’)-1][(j-’0’)-1]=1 p=p+1 q<N arr[p][q] 结 束 3) 功能模块说明 上面这个功能是建立两个集合。 建立一个二维数组分别是矩阵的长宽。 这个模块建立两个集合之间的关系。 矩阵的输出。 三.结果分析 1) 实验环境 Windows 7 Visual C++ 6.0 2) 算法设计的参数说明 M,N为两集合的大小和关系矩阵的长宽。 p、q为普通的控制循环次数的变量,或充当数组长度的距离变量。 temp控制循环的执行。 2) 实验结果 4) 结果分析与讨论 当输入关系1a、2b、3c时,关系矩阵的arr[0][0]、、[1][1]、[2][2]的真值为1,符合教材当中的关系矩阵的定义。 5) 算法的优缺点 优点是能控制矩阵的循环。 6) 实验的不足之处及改进设想 该代码输入比较复杂,繁琐。应该优化代码。 四. 实验心得 将数学知识与计算机语言相结合。 主要参考文献 C++程序设计教程(第二版) 钱能 著 本文档由香当网(https://www.xiangdang.net)用户上传

    下载文档到电脑,查找使用更方便

    文档的实际排版效果,会与网站的显示效果略有不同!!

    需要 15 香币 [ 分享文档获得香币 ]

    下载文档

    文档贡献者

    serendipity1

    贡献于2018-11-09

    下载需要 15 香币 [香币充值 ]
    亲,您也可以通过 分享原创文档 来获得香币奖励!
    下载文档