离散数学实验报告
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
课程名称:离散数学课程设计指导教师:
班级:信软2014-2 姓名:学号:
实验项目名称:
若干代数系统的计算机判断--群的判定
实验目的及要求:
【实验目的】掌握群的判定方法。
【实验内容】输入代数系统(A,*)的集合A和*运算的运算表,判断(A,*)是否是群。
实验原理:
【实验原理和方法】
(1)用一维数组a[n]存贮集合A。
(2)用二维数组op[n][n]存贮运算表。
(3)根据群的定义,代数系统(A,*)若为群,除运算表已表明运算*封闭外,还应该满足下列三个条件:*运算可结合、有幺元e、 A中任何元素都有逆元。
*运算可结合:
for(i=0;i for(j=0;j for(k=0;k { for(l=0;l { if(op[i][j]==a[l]) x=l;/*op[i][j] 代表a*b*/ if(op[j][k]==a[l]) y=l;/*op[j][k] 代表b*c*/ } if(op[i][y]!=op[x][k])/*op[i][y]代表a*(b*c)*/ { printf("(%d*%d)*%d=%d,%d*(%d*%d)=%d,运算是不可结合!\n", a[i],a[j],a[k],op[x][k],a[i],a[j],a[k],op[i][y]); flag=0;/*不满足结合性*/ } } if(flag) printf("运算是可结合!\n"); 有幺元e: flag=0; for(i=0;i { for(j=0;j if(op[i][j]!=a[j] || op[j][i]!=a[j]) break; if(j==N) { printf("群有幺元%d!\n",a[i]); e=a[i]; flag=1; break; } } if(!flag) printf("群没有幺元!\n"); A中任何元素都有逆元: flag=1; for(i=0;i { for(j=0;j if(op[i][j]==e && op[j][i]==e) break;/*e是幺元*/ if(j==N) { flag=0; printf("A中元素%d没有逆元!\n",a[j]); } } if(flag) printf("A中任何元素都有逆元!\n"); 实验内容: 完整代码: #include "stdio.h" #include "stdlib.h" #include "math.h" #define OK 1 #define ERROR 0 #define N 2 typedef int Status ; typedef int ElemType; ElemType Vcomplete(ElemType x,ElemType y){//群对应的运算 return x*y; } Status juzhen(ElemType *a,ElemType ***op){//构造op矩阵 int i,j; for (i=0;i for (j=0;j { op[i][j]=Vcomplete(a[i],a[j]); } printf("complete: *"); return OK; } Status jiehe(ElemType **op,ElemType *a){///运算可结合 int i,j,k,l,x,y; int flag=0; for(i=0;i for(j=0;j for(k=0;k { for(l=0;l { if(op[i][j]==a[l]) x=l;///*op[i][j] 代表a*b*////矩阵中的位置,在群中找到相应的元素,保存这个元素位置; if(op[j][k]==a[l]) y=l;///*op[j][k] 代表b*c*/ } if(op[i][y]!=op[x][k])/*op[i][y]代表a*(b*c)*////通过找矩阵中元素的与剩下元素运算在矩阵中对应位置; { printf("(%d*%d)*%d=%d,%d*(%d*%d)=%d,运算是不可结合!\n",a[i],a[j],a[k],op[x][k],a[i],a[j],a[k],op[i][y]); flag=0;/*不满足结合性*/ } } if(flag) printf("运算是可结合!\n"); } Status yaoyuan(ElemType *a,ElemType **op,ElemType *e){//有幺元 int i,j; int flag=0; for(i=0;i