УМОЛЯЮ ОТ ЭТОГО ЗАВИСИТ ЖИЗНЬ ЧЕЛОВЕКА Шифр Цезаря
В шифре Цезаря каждый символ, являющийся буквой латинского алфавита, заменяется на другой символ, 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.

gkulgkuy gkulgkuy    3   18.03.2021 20:39    14

Ответы
Davidavid Davidavid  17.04.2021 20:39

def CaesarCipherChar(c, n):

   alpha = ''

   alpha2 = alpha.upper()

   if c.isupper():

       return(alpha2[(alpha2.index(c) + n) % len(alpha2)])

   elif c.islower():

       return(alpha[(alpha.index(c) + n) % len(alpha)])

   else:

       return(c)

 

def CaesarCipher(s,k):

   res = ''

   for c in s:

       res += CaesarCipherChar(c, n)

   return(res)

 

n = int(input())

s = input().strip()

print(CaesarCipher(s, n))

ПОКАЗАТЬ ОТВЕТЫ
Другие вопросы по теме Информатика