置换群相关运算及实现

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

上海电力学院ShanghaiUniversityofElectricPower实验报告院系名称:计算机科学与技术学院课程名称:应用密码学_______实验项目名称:置换群相关运算及实现班级与班级代码:20132512013252学生姓名:吴xx学号:_xxxxxxxx同组同学姓名黄xx学号:xxxxxxxx指导教师:温蜜实验日期:2015年10月19日实验报告成绩:实验三置换群相关的运算及实现一、实验目的理解密码学相关基本概念理解并能够编写基本的古典密码体制熟练应用C++编程实现密码体制二、实验内容1、求S3的所有元素并输出所有的置换。2、水域S3的任意两个置换元素,求他们的复合运算的结果。3、给定S3的某个置换,求它的逆置换。三、实验原理4、置换群:n元对称群的任意一个子群,都叫做一个n元置换群5、矩阵的复合运算6、矩阵的求逆运算四、实验步骤(包括流程图、功能模块)1.申请18个空间,将3个元素依次循环填入填充。2.通过置换,求得所有置换群3.矩阵的复合运算4.矩阵的求逆运算【算法流程图】【开发环境】申请空间,并填充数值通过置换计算出置换群打印置换群矩阵的复合求取逆矩阵VisualStudio6.0C++(Windows8.1)【实验结果】五、参考资料(书籍或网络文章)《密码编码学与网络安全——原理与实践(第五版)》八.源代码#includeiostreamusingnamespacestd;voiddisplay(inta[3],intb=1,intc=2,intd=3){cout|-\t123\t-|endl;cout|-\ta[b-1]a[c-1]a[d-1]\t-|endl;coutendl;}voidoutdisplay(inta[]){display(a,1,2,3);display(a,2,1,3);display(a,1,3,2);display(a,3,2,1);display(a,2,3,1);display(a,3,1,2);}voidyunsuan(inta[],intb[]){intc[3];for(inti=0;i3;i++){c[i]=b[a[i]-1];}display(c);}voidqiuni(inta[]){intb[3];for(inti=0;i3;i++)b[a[i]-1]=i+1;cout++++++++++++++++++++++++++++endl;display(a);cout上方元素的逆为:endl;display(b);}intmain(){inta[3]={1,2,3};intb[3],c[3];a[0]=1;a[1]=2;a[2]=3;cout:\n;outdisplay(a);cout输入两个元素:\n;cinb[0]b[1]b[2];cout-----------next----------------endl;cinc[0]c[1]c[2];yunsuan(b,c);cout请输入要求逆的元素endl;cinc[0]c[1]c[2];qiuni(c);cina[1];}

1 / 4
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功