求dalao帮助,不知道这么写哪错了
查看原帖
求dalao帮助,不知道这么写哪错了
17511
The_Key楼主2017/7/7 16:30

大体思路就是用两个指针使密文和密匙对应起来然后利用规律求出明文

#include<iostream>
using namespace std;
string key,puz;
int i,j;
int main()
{
    cin>>key>>puz;
    for(i=0,j=0;i<puz.length();i++,j++)
    {
        if(j==key.length()) j=0; 
        if(key[j]>='a'&&key[j]<='z')//如果密文是小写字母
        cout<<char(puz[i]-key[j]+'a');//规律就是  明文=密文-密匙+'a'(小写的时候)
        else 
        if(key[j]>='A'&&key[j]<='Z')//如果密文是大写字母
        cout<<char(puz[i]-key[j]+'A');//规律同小写
    }
    return 0;
}
2017/7/7 16:30
加载中...