シーザー暗号化と復号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<