beaufort.cpp
来自「三种密码学中简单的加密算法:Playfair」· C++ 代码 · 共 39 行
CPP
39 行
#include <iostream.h>
#include <string.h>
void main()
{
char text[200],key[20],code[200];
int t[200],k[20],c[200],l1,l2,i,j,l=1;
cout<<"Please input the clear text (with lowercase letters):"<<endl;
cin>>text;
cout<<"Please input the cryptographic key (with lowercase letters):"<<endl;
cin>>key;
l1=strlen(text);
l2=strlen(key);
for (i=0;i<l1;i++)
{
t[i]=int(text[i])-97;
if (t[i]<0 ||t[i]>25)
l=0;
}
for (i=0;i<l2;i++)
{
k[i]=int(key[i])-97;
if (k[i]<0 ||k[i]>25)
l=0;
}
if (l=0)
cout<<"Error!"<<endl;
else
{
cout<<"The cryptograph is:"<<endl;
for (i=0;i<l1/l2+1;i++)
for (j=0;(j<l2)&&(i*l2+j<l1);j++)
{
c[i*l2+j]=(25-t[i*l2+j]+k[j])%26;
code[i*l2+j]=char(c[i*l2+j]+97);
cout<<code[i*l2+j];
}
}
cout<<endl;
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?