凯撒加密与解密 C++实现

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<

 

你可能感兴趣的:(算法)