Вопрос задан 05.07.2023 в 02:16. Предмет Информатика. Спрашивает Николаев Илья.

Python. Помогите решить задачу! Шифр Цезаря В шифре Цезаря каждый символ, являющийся буквой

латинского алфавита, заменяется на другой символ, k-тый по счёту в алфавите после данного. Если этот символ выходит за границы, то берётся соответствующий из начала строки. Например, для k=3 символ A заменяется на D, символ B — на E, символ C — на F, ..., символ Z – на C. Аналогично, строчные буквы заменяются на строчные буквы. Все остальные символы не меняются. Дана строка, зашифруйте её при помощи шифра Цезаря. Решение оформите в виде функции CaesarCipher (S, k), возвращающей новую строку. S — исходная строка, k — величина сдвига. Функцию нужно вызывать со значением k = 3. Указание Cделайте функцию CaesarCipherChar (c, k), шифрующую один символ. Примеры Ввод: In a hole in the ground there lived a hobbit. Вывод: Lq d kroh lq wkh jurxqg wkhuh olyhg d kreelw.
0 0
Перейти к ответам

Ответы на вопрос

Внимание! Ответы на вопросы дают живые люди. Они могут содержать ошибочную информацию, заблуждения, а также ответы могут быть сгенерированы нейросетями. Будьте внимательны. Если вы уверены, что ответ неверный, нажмите кнопку "Пожаловаться" под ответом.
Отвечает Беляев Егорушка.

Ответ:

Код текстом почему-то не даёт отправить, сделал снимок экрана


0 0
Отвечает нейросеть ChatGpt. Будьте внимательны, ответы нейросети могут содержать ошибочные или выдуманные данные.

Конечно, я помогу вам с этой задачей. Вот решение с использованием функции CaesarCipherChar:

python
def CaesarCipherChar(c, k): if 'A' <= c <= 'Z': return chr((ord(c) - ord('A' + k) + 26) % 26 + ord('A')) elif 'a' <= c <= 'z': return chr((ord(c) - ord('a' + k) + 26) % 26 + ord('a')) return c def CaesarCipher(S, k): encrypted = [CaesarCipherChar(c, k) for c in S] return ''.join(encrypted) # Пример использования original_string = "In a hole in the ground there lived a hobbit." k = 3 encrypted_string = CaesarCipher(original_string, k) print(encrypted_string)

Этот код создает функцию CaesarCipherChar, которая шифрует один символ, и функцию CaesarCipher, которая шифрует всю строку с заданным сдвигом k. Затем пример использования показывает, как зашифровать исходную строку.

Заметьте, что в данном решении мы используем операции над кодами символов (ord и chr), чтобы обеспечить циклическую замену символов в алфавите.

0 0

Похожие вопросы

Топ вопросов за вчера в категории Информатика

Последние заданные вопросы в категории Информатика

Задать вопрос