对称矩阵压缩算法的实现

5 程序测试

5.1 合法输入 5.1.1 菜单

为了使程序界面能够美化,使用* *对其进行框圈,并且使用\\t使其跳到下一个制表位置,菜单的使用,使程序的操作简单明了,如图5.1所示。

图5.1 菜单

5.1.2构建任意矩阵

在对矩阵进行构建时,先确定矩阵的阶数n,然后对矩阵中的元素进行录入,录入时用空格键区分两个数字,即使输入元素超过n*n个,也只取前n*n个元素,并将其以矩阵的形式输出,如图5.2所示。

图5.2 构建任意矩阵

16

5.1.3 成功构建矩阵对其进行判断是否为对称矩阵

该矩阵是否为对称矩阵,是通过k值进行判断,对于上述矩阵,对角线为1、7、3、9、5;如若对称则s.M[i][j]=s.M[j][i],但通过矩阵的输出,我们发现(6、2)(1、3)(6、4)(1、5)(2、8)(7、9)......10组数据中,没有一组内的数据相同,则不相等的元素数为k=20.所以该矩阵不是对称矩阵。如图5.3所示

图5.3 矩阵的对称判断(不对称矩阵)

在矩阵输入时,必须是对称矩阵才可以进行第三步第四步操作,否则在判断对称矩阵不是对称矩阵之后,系统提示重新输入数据,在输入并对其判断为对称矩阵之后,该矩阵是对称矩阵,因为对角线为1、3、5、7、9;如若对称则s.M[i][j]=s.M[j][i],通过矩阵的输出,我们发现(2,2)(3,3)(4,4)(4,4)(5,5)(6,6)......10组数据中,括号内的元素都相同,则不相等的元素数为k=0.所以该矩阵是对称矩阵,如图所示5.4。

17

图5.4 矩阵的对称判断(对称矩阵)

5.1.4 对对称矩阵进行压缩存储

对对称矩阵进行压缩存储,其存储的元素为下三角(包括对角线)中的元,即1、2、3、3、4、5、4、5、6、7、5、6、7、8、9,存储元素的个数为k=n*(n+1)/2,即15,如图5.5所示。

18

图5.5 对称矩阵的压缩

5.1.5 按照数学形式输出所压缩的矩阵

矩阵是很多科学与工程计算问题中研究的数学对象,因此,程序编写的最终目的是使其能够以数学形式输出,方便人们的研究,如图5.6所示。

图5.6 数学形式输出矩阵

19

联系客服:779662525#qq.com(#替换为@) 苏ICP备20003344号-4