Регистрация
30 Июн 2013
Сообщения
74
Репутация
0
Спасибо
0
Монет
0
В шифре Цезаря каждый символ, являющийся буквой латинского алфавита, заменяется на другой символ, k-й по счёту в алфавите после данного. Если этот символ выходит за границы, то берётся соответствующий из начала строки. Например, для k=3 символ A заменяется на D, символ B — на E, символ C — на F…, символ Z — на С. Аналогично строчные буквы заменяются на строчные буквы. Все остальные символы не меняются.

Дана строка, зашифруйте её при помощи шифра Цезаря для k=3.
 
#include
#include
class coder
{
static char arr[256];
std::string str;
public:
static constexpr void fills()
{
std::iota(arr, arr + 256, 0);
for (int i = 0; i
 
#include

using namespace std;


void cipherCaesar(string &str, int d){
for(auto &i: str)
if((i >= 'a' && i = 'A' && i int('z'))) :
char((int(i) + d) % (int('Z') + 1) + int('A') * (int(i) + d > int('Z')));
}


int main() {
string s;
getline(cin, s);
cipherCaesar(s, 3);
cout
 
Ну, вот логика (алгоритм) этого шифра Цезаря реализованная на Python.
На С++ пока не умею
875a8375f91de049494d6073098e8a2f_94170421d8f5ca050e01caffb8e51564.png

 

Похожие темы

Назад
Сверху