C/C++
Написать код расшифровки шифра Цезаря на C++
Написать программу расшифровки шифра Цезаря (на С++) для своего варианта (Ючпф ьцюгкэж у люопгж юьцёгкш. Ю лпошйхк поушьэмпшшкй цщгкож, у эк — хщлёцк. Ю чёьцу шпэ ошк, ю ьцщмк шпэ ъыпопцк.) и получить результат расшифровки.
#include <iostream>
#include <string>
#include <iomanip>
using namespace std;
bool is_alpha(char ch) {
if (ch >= 'A' && ch <= 'Z' || ch >= 'a' && ch <= 'z') return true;
if (ch >= 'А' && ch <= 'Я' || ch >= 'а' && ch <= 'я') return true;
return false;
}
string splus(const string& line) {
auto s = line;
for (auto& ch : s) {
if (ch == ' ') continue;
if (is_alpha(ch)) {
if (ch == 'Z' || ch == 'z') ch -= 25;
else if (ch == 'Я' || ch == 'я') ch -= 31;
else ++ch;
} else {
++ch;
}
}
return s;
}
string sminus(const string& line) {
auto s = line;
for (auto& ch : s) {
if (ch == ' ') continue;
if (is_alpha(ch)) {
if (ch == 'A' || ch == 'a') ch += 25;
else if (ch == 'А' || ch == 'а') ch += 31;
else --ch;
} else {
--ch;
}
}
return s;
}
string encode(const string& line, int shift) {
auto s = line;
for (int i = 0; i < shift; ++i) s = splus(s);
return s;
}
string decode(const string& line, int shift) {
auto s = line;
for (int i = 0; i < shift; ++i) s = sminus(s);
return s;
}
int main() {
const auto shift = 13;
system("chcp 1251 > nul");
string line = "Ючпф ьцюгкэж у люопгж юьцёгкш. Ю лпошйхк поушьэмпшшкй цщгкож, у эк — хщлёцк. Ю чёьцу шпэ ошк, ю ьцщмк шпэ ъыпопцк.";
cout << line << '\n'; // исходная
line = encode(line, shift);
cout << line << '\n'; // кодированная
line = decode(line, shift);
cout << line << '\n'; // декодированная
system("pause > nul");
}
#include <string>
#include <iomanip>
using namespace std;
bool is_alpha(char ch) {
if (ch >= 'A' && ch <= 'Z' || ch >= 'a' && ch <= 'z') return true;
if (ch >= 'А' && ch <= 'Я' || ch >= 'а' && ch <= 'я') return true;
return false;
}
string splus(const string& line) {
auto s = line;
for (auto& ch : s) {
if (ch == ' ') continue;
if (is_alpha(ch)) {
if (ch == 'Z' || ch == 'z') ch -= 25;
else if (ch == 'Я' || ch == 'я') ch -= 31;
else ++ch;
} else {
++ch;
}
}
return s;
}
string sminus(const string& line) {
auto s = line;
for (auto& ch : s) {
if (ch == ' ') continue;
if (is_alpha(ch)) {
if (ch == 'A' || ch == 'a') ch += 25;
else if (ch == 'А' || ch == 'а') ch += 31;
else --ch;
} else {
--ch;
}
}
return s;
}
string encode(const string& line, int shift) {
auto s = line;
for (int i = 0; i < shift; ++i) s = splus(s);
return s;
}
string decode(const string& line, int shift) {
auto s = line;
for (int i = 0; i < shift; ++i) s = sminus(s);
return s;
}
int main() {
const auto shift = 13;
system("chcp 1251 > nul");
string line = "Ючпф ьцюгкэж у люопгж юьцёгкш. Ю лпошйхк поушьэмпшшкй цщгкож, у эк — хщлёцк. Ю чёьцу шпэ ошк, ю ьцщмк шпэ ъыпопцк.";
cout << line << '\n'; // исходная
line = encode(line, shift);
cout << line << '\n'; // кодированная
line = decode(line, shift);
cout << line << '\n'; // декодированная
system("pause > nul");
}
Мансурбек Матякубов
Благодарю!
Умей слушать и будешь услышан. У бедняка единственная лошадь, и та — кобыла. У мысли нет дна, у слова нет предела
....))))) ....)))))
А у Николая Веселухи нет тормоза, он фигачит сразу по памяти любой исходник :)
Так у Цезаря спроси ;)
Ф. Степанцов
Если только лицом в салат))
Похожие вопросы
- Помогите доработать шифр Цезаря на C/С++
- Написать код для задачи C++
- Помогите пожалуйста написать код.(C++)
- Написал код для языка C, но работает не правильно
- Помогите пожалуйста написать код на c++, выводящий имя, фамилию и дату рождения нескольких человек
- Написать код для задачи на C++
- Помогите пожалуйста написать код на C++
- Написать код C++
- Написать код на языке C++
- Задание на c++ ответить на вопросы и написать код