С + +Написать код программы для реализации алгоритма шифрования "Шифр Цезаря"Шифр Цезаря — это вид шифра подстановки, в котором каждый символ в открытом тексте заменяется символом, находящимся на неко?

Информатика | студенческий

С + +

Написать код программы для реализации алгоритма шифрования "Шифр Цезаря"

Шифр Цезаря — это вид шифра подстановки, в котором каждый символ в открытом тексте заменяется символом, находящимся на некотором постоянном числе позиций левее или правее него в алфавите.

Обязательное условие – украинский алфавит

Чтобы было меньше проблем, используйте большие буквы.

Ответить на вопрос
Ответы (2)
Vedeeva74 14 апр. 2024 г., 07:41:15

Объяснение :

#include < ; iostream> ;

#include < ; string> ;

using namespace std ; / / Функция для шифрования строки на основе ключа

string encrypt(string text, int key) { string result = "" ; int n = text.

Length() ; for (int i = 0 ; i < ; n ; i + + ) { / / Получаем код символа int code = text[i] ; / / Если символ - буква украинского алфавита (в верхнем регистре) if (code > ; = 1040 & ; & ; code < ; = 1071) { / / Вычисляем новый код символа code = (code - 1040 + key) % 32 + 1040 ; } / / Добавляем символ к результату result + = (char)code ; } return result ;

}

int main() { / / Задаем исходную строку и ключ string text = "ПРИВІТ СВІТ" ; int key = 5 ; / / Шифруем строку string encrypted = encrypt(text, key) ; / / Выводим зашифрованную строку cout < ; < ; encrypted < ; < ; endl ; return 0 ;

}.

Vladimirrr74 14 апр. 2024 г., 07:41:17

Ответ :

#include < ; iostream> ;

#include < ; string> ;

#include < ; locale> ;

using namespace std ;

string encrypt(string plaintext, int shift) { string ciphertext = "" ; int n = plaintext.

Length() ; for (int i = 0 ; i < ; n ; i + + ) { wchar_t c = plaintext[i] ; if (c > ; = L'А' & ; & ; c < ; = L'Я') { c = ((c - L'А' + shift) % 33) + L'А' ; } ciphertext + = c ; } return ciphertext ;

}

string decrypt(string ciphertext, int shift) { string plaintext = "" ; int n = ciphertext.

Length() ; for (int i = 0 ; i < ; n ; i + + ) { wchar_t c = ciphertext[i] ; if (c > ; = L'А' & ; & ; c < ; = L'Я') { c = ((c - L'А' - shift + 33) % 33) + L'А' ; } plaintext + = c ; } return plaintext ;

}

int main() { / / установка локали для работы с украинским языком setlocale(LC_ALL, "uk_UA.

UTF - 8") ; string plaintext, ciphertext ; int shift ; cout < ; < ; "Введите текст для шифрования : " ; getline(cin, plaintext) ; cout < ; < ; "Введите сдвиг : " ; cin > ; > ; shift ; ciphertext = encrypt(plaintext, shift) ; cout < ; < ; "Зашифрованный текст : " < ; < ; ciphertext < ; < ; endl ; plaintext = decrypt(ciphertext, shift) ; cout < ; < ; "Расшифрованный текст : " < ; < ; plaintext < ; < ; endl ; return 0 ;

}.

Кэти1234509876 3 янв. 2024 г., 02:27:29 | 5 - 9 классы

Объём сообщения состовляет 50 байтТекстовое сообщение содержит 80 символовСколько букв алфавита было использовано?

Объём сообщения состовляет 50 байт

Текстовое сообщение содержит 80 символов

Сколько букв алфавита было использовано?

Помогите​.

Potabekova 23 янв. 2024 г., 14:42:11 | 10 - 11 классы

- связь между размером алфавита и информационным весом символа?

- связь между размером алфавита и информационным весом символа.

Анна2118 4 мар. 2024 г., 23:27:40 | 1 - 4 классы

Не верь глазам своим?

Не верь глазам своим.

Какой прямоугольник длиннее, левый или правый?

​.

Квазимод 7 янв. 2024 г., 04:39:13 | 10 - 11 классы

Даю 50 баловНаписать код на python?

Даю 50 балов

Написать код на python.

Нотердам2гам2гам 16 янв. 2024 г., 13:25:36 | 5 - 9 классы

Как декодировать текст, заданный шестнадцатеричным кодом используя таблицу 8 - битной кодировке Windows - 1251 символов?

Как декодировать текст, заданный шестнадцатеричным кодом используя таблицу 8 - битной кодировке Windows - 1251 символов.

Ilina2351 31 янв. 2024 г., 00:49:53 | студенческий

Вывести маршрут максимальной стоимостиВ левом верхнем углу прямоугольной таблицы размером N×M находится черепашка?

Вывести маршрут максимальной стоимости

В левом верхнем углу прямоугольной таблицы размером N×M находится черепашка.

В каждой клетке таблицы записано некоторое число.

Черепашка может перемещаться вправо или вниз, при этом маршрут черепашки заканчивается в правом нижнем углу таблицы.

Подсчитаем сумму чисел, записанных в клетках, через которую проползла черепашка (включая начальную и конечную клетку).

Найдите наибольшее возможное значение этой суммы и маршрут, на котором достигается эта сумма.

Роппои 4 февр. 2024 г., 21:56:22 | 5 - 9 классы

Алфавит некоторого языка состоит из 32 символов?

Алфавит некоторого языка состоит из 32 символов.

С помощью данного алфавита был составлен текст, который занимает 3 страницы, на каждой странице 20 строк по 10 символов.

Определите размер текста ( информационный объем) в байтах.

Помогите , решите с полным решением, пожалуйста!

До безумия нужно, ответы расходятся с другим человеком, а я не знаю, что правильно то будет.

Никита8921 14 февр. 2024 г., 06:54:18 | 5 - 9 классы

Статья содержит 48 страниц по 40 строк по 40 символов в каждой символ кодируется 16 битами, определить размер статьи в килобайтах?

Статья содержит 48 страниц по 40 строк по 40 символов в каждой символ кодируется 16 битами, определить размер статьи в килобайтах.

Lutfulasafiulli 13 янв. 2024 г., 23:53:48 | 5 - 9 классы

Задача 1?

Задача 1.

Алфавит содержит 512 различных символов.

Сколько байт весит один знак такого алфавита?

Определите информационный объём сообщения из 1024 символов этого алфавита (в битах и байтах)?

Задача 2.

Количество информации в сообщении, содержащем 4096 символов, составляет 1 / 256Мб.

Определите мощность алфавита, с помощью которого записано это сообщение.

Задача 3.

Количество информации в сообщении, содержащем 2048 символов, составляет 8 Кб.

Определите мощность алфавита, с помощью которого записано это сообщение.

EvdokiomovaUna 16 янв. 2024 г., 19:45:36 | 5 - 9 классы

Дана часть программы?

Дана часть программы.

Определите число, которое выведет программа на экран.

Artem19999 10 мар. 2024 г., 18:19:13 | 5 - 9 классы

Алфавит состоит из 28 букв?

Алфавит состоит из 28 букв.

На диске выделено 50 байт.

Сколько символов можно записать на диСк?

СРОЧНО ПОМОГИТЕ ДАЮ 20 БАЛЛОВ​.

Перед вами страница с вопросом С + +Написать код программы для реализации алгоритма шифрования "Шифр Цезаря"Шифр Цезаря — это вид шифра подстановки, в котором каждый символ в открытом тексте заменяется символом, находящимся на неко?, который относится к категории Информатика. Уровень сложности соответствует учебной программе для учащихся студенческий. Здесь вы найдете не только правильный ответ, но и сможете ознакомиться с вариантами пользователей, а также обсудить тему и выбрать подходящую версию. Если среди найденных ответов не окажется варианта, полностью раскрывающего тему, воспользуйтесь «умным поиском», который откроет все похожие ответы, или создайте собственный вопрос, нажав кнопку в верхней части страницы.