hill.cpp
来自「对称密码学体制中hill密码加密解密算法实现。」· C++ 代码 · 共 29 行
CPP
29 行
#include<stdio.h>
#define p 100
main()
{printf("请输入明文的长度:");
int n;
scanf("%d",&n);
printf("请输入长度为%d的明文:",n);
int a[p];
for(int i=0;i<n;i++)
scanf("%d",&a[i]);
int k[3][3]={17,17,5,21,18,21,2,2,19};
int j,m,b[p],lns[p];
if(n%3==0)
for(i=0;i<n/3;i++)
for(j=0;j<3;j++)
{
b[j]=(a[0]*k[j][0]+k[j][1]*a[1]+k[j][2]*a[2])%26;
lns[3*i+j]=b[j];
}
else
for(i=0;i<n/3+1;i++)
for(j=0;j<3;j++)
{
b[j]=(a[0]*k[j][0]+k[j][1]*a[1]+k[j][2]*a[2])%26;
lns[3*i+j]=b[j];
}
for(i=0;i<n;i++)
printf("%d ",lns[i]);
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?