C/C++

Помоги пожалуйста написать программу на C++

Нужно написать программу, которая бы зашифровавала и расшыфровавала любые слова, используя шифр цезаря . И нужно, чтоб автоматически создавала txt. Файл. Очень нужна готовая работающая программа на C++, пожалуйста)
#include <iostream>
#include <string>
#include <iomanip>
#include <fstream>
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 = 5;
system("chcp 1251 > nul");
cout << "Исходная строка: ";
string line;
getline(cin, line);
line = encode(line, shift);
ofstream save("сaesar.txt");
if (save.is_open()) {
save << line;
save.close();
puts("Кодированная строка сохранена в файл!");
} else {
puts("Всё плохо, брат!");
}
string code;
ifstream file("сaesar.txt");
if (file.is_open()) {
getline(file, code);
file.close();
cout << "Кодированная строка: " << code << '\n';
code = decode(code, shift);
cout << "Декодированная строка: " << code << '\n';
} else {
puts("Что-то пошло не так...");
}
system("pause > nul");
}
Илюбаев Мади
Илюбаев Мади
64 424
Лучший ответ
Ищи здесь. Был такой ответ