シーザー暗号化と復号C++実装
731 ワード
C++実現の原理は簡単すぎて説明しない
#include
#include
#include
using namespace std;
string Caesarencrypt(string s, int key){//
key = (key + 26) % 26;
for(int i = 0; i < s.size(); i++){
if(s[i] == ' ')continue;
else if(islower(s[i]))
s[i] = (s[i] - 'a' + key) % 26 + 'a';
else if(isupper(s[i]))
s[i] = (s[i] - 'A' + key) % 26 + 'A';
}
return s;
}
string Caesardecipher(string s, int key){//
return Caesarencrypt(s,26 - key);
}
int main(){
string s;
int key;// key
cin>>key;
cin.get();
getline(cin,s);
cout<