Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Помогите написать код на python

Чавычалов Владислав Ученик (234), на голосовании 3 недели назад
Одним из первых в истории примеров шифрования считаются закодиро-ванные послания Юлия Цезаря. Римскому полководцу необходимо было посылать письменные приказы своим генералам, но он не желал, чтобы в случае чего их прочитали недруги. В результате он стал шифровать свои послания довольно простым методом, который впоследствии стали называть кодом Цезаря.
Идея шифрования была совершенно тривиальной и заключалась в цик-лическом сдвиге букв на три позиции. В итоге буква А превращалась в D, В - в Е, С - в F и т. д. Последние три буквы алфавита переносились на на-чало. Таким образом, буква Х становилась А, Y - В, а Z - С. Цифры и другие символы не подвергались шифрованию.
Напишите программу, реализующую код Цезаря. Позвольте пользователю ввести фразу и количество символов для сдвига, после чего выведите результирующее сообщение. Убедитесь в том, что ваша программа шиф-рует как строчные, так и прописные буквы. Также должна быть возмож-ность указывать отрицательный сдвиг, чтобы можно было использовать вашу программу для расшифровки фраз.
Голосование за лучший ответ
Александр Загуляев Мыслитель (7515) 1 месяц назад
 def cipher(text, d): 
return ''.join(chr((ord(c) - (97 if c.islower() else 65) + d) % 26 + (97 if c.islower() else 65)) if c.isalpha() else c for c in text)

text = input()
d = int(input())
print(cipher(text, d))
mld8nk Ученик (185) 1 месяц назад
`def ave_cesar(string, key):
alph = 'abcdefghijklmnopqrstuvwxyz'
return ''.join(c if not c.isalpha() else (alph[(alph.find(c) + key) % 26] if c.islower() else alph[(alph.find(c.lower()) + key) % 26].upper()) for c in string)
string, key = input(), int(input())
print(ave_cesar(string, key))`
поправьте, если что не так, давно шифры не встречал.
matic2280 Мастер (1124) 1 месяц назад
 phrase = input("Введите фразу для шифрования: ") 
shift = int(input("Введите количество символов для сдвига: "))

def caesarcipher(phrase, shift):
result = ""
for char in phrase:
if char.isalpha():
if char.islower():
result += chr((ord(char) - ord('a') + shift) % 26 + ord('a'))
elif char.isupper():
result += chr((ord(char) - ord('A') + shift) % 26 + ord('A'))
else:
result += char
return result

encryptedphrase = caesarcipher(phrase, shift)
print("Зашифрованная фраза:", encryptedphrase)
Похожие вопросы