【实验目的】 对称: 通过算法设计并编程实现对给定集合上的关系是否为对称关系的判断,加深学生对关系性质的理解,掌握用矩阵来判断关系性质的方法 自反: 通过算法设计并编程实现对给定集合上的关系是否为自反关系的判断,加深学生对关系性质的理解,掌握用矩阵来判断关系性质的方法
【实验内容】 已知关系R 由关系矩阵M 给出,要求判断由 M 表示的这个关系是否为对称关系
假定R 的关系矩阵为:1234210330124321M 3
【实验要求】 C 语言编程实现 4
【算法描述】 对称: 从给定的关系矩阵来判断关系R 是否为对称是很容易的
若 M(R 的关系矩阵)为对称矩阵,则 R 是对称关系;若 M 为反对称矩阵,则 R 是反对称关系
因为R 为对称的是等价关系的必要条件,所以,本算法可以作为判等价关系算法的子程序给出
算法实现: (1) 输入关系矩阵M(M 为n 阶方阵); (2) 判断对称性,对于 i=2,3,…
,n;j=1,2,……,i-1,若存在 mij=mji,则 R 是对称的; (3) 判断反对称性; (4) 判断既是对称的又是反对称的; (5) 判断既不是对称的又不是反对称的; (6) 输出判断结果
自反: 从给定的关系矩阵来断判关系R 是否为自反是很容易的
若 M(R 的关系矩阵)的主对角线元素均为1,则 R 是自反关系;若 M(R 的关系矩阵)的主对角线元素均为0,则 R 是反自反关系;若 M(R 的关系矩阵)的主对角线元素既有 1又有 0,则 R 既不是自反关系也不是反自反关系
本算法可以作为判等价关系算法的子程序给出
算法实现 (1) 输入关系矩阵M(M 为n 阶方阵)
(2) 判断自反性,对于 i=1,2,…
,n;若存在 mii=0,则 R 不是自反的;若存在 mii=1,则 R 是自反的;否则 R 既