Вопрос задан 21.06.2023 в 16:35. Предмет Информатика. Спрашивает Аксионов Алексей.

Помогите пж, а так же обратите внимание на конец кода, который должен соответствовать, Конец

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

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

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

Ответ:

def CaesarCipherChar(c, k):

   alphabet="abcdefghijklmnopqrstuvwxyz"

   newstring=""

   for i in c:

       if i.lower() not in alphabet:

           newstring+=i

       else:

           if i.isupper():

               newstring+=alphabet[(alphabet.index(i.lower())+k)%26].upper()

           else: newstring+=alphabet[(alphabet.index(i.lower())+k)%26].lower()

   print(newstring)

s=input()

CaesarCipherChar(s,3)

Объяснение:

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

Для решения этой задачи, вам сначала потребуется написать функцию CaesarCipherChar(c, k), которая будет шифровать один символ согласно шифру Цезаря. Затем, вы можете использовать эту функцию внутри функции CaesarCipher(S, k), чтобы зашифровать всю строку.

Вот код для решения этой задачи:

python
# Функция для шифрования одного символа согласно шифру Цезаря def CaesarCipherChar(c, k): if 'A' <= c <= 'Z': # Если символ в верхнем регистре return chr(((ord(c) - ord('A') + k) % 26) + ord('A')) elif 'a' <= c <= 'z': # Если символ в нижнем регистре return chr(((ord(c) - ord('a') + k) % 26) + ord('a')) else: # Если символ не является буквой, возвращаем его как есть return c # Функция для шифрования всей строки согласно шифру Цезаря def CaesarCipher(S, k): result = "" for char in S: result += CaesarCipherChar(char, k) return result # Входная строка S = input() # Вызываем функцию CaesarCipher с k = 3 и выводим результат print(CaesarCipher(S, 3))

При вводе строки исходных данных, программа вызовет функцию CaesarCipher с k = 3 и выведет зашифрованную строку в соответствии с шифром Цезаря.

0 0

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

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

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

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