Write a script that inputs a line of encrypted text and a distance value and out
ID: 3859225 • Letter: W
Question
Write a script that inputs a line of encrypted text and a distance value and outputs plaintext using a Caesar cipher. The script should work for any printable characters. my code data = input("Enter text for encryption: ") dist = int(input("Enter the value for Distance: ")) datum = "" for cha in data: val = ord(cha) cipher_val = (val + dist) if cipher_val > ord('z'): cipher_val = ord('a') + dist datum = datum + chr(cipher_val) print('Encrypted Text: ') print(datum) there is an error saying (UnicodeEncodeError: 'ascii' codec can't encode character 'Å' in position 0: ordinal not in range(128)). I need help converting a Unicode string into the ASCII encoding
Explanation / Answer
data = raw_input(" Enter text for encryption: ")
dist = int(raw_input(" Enter the value for Distance: "))
datum = ""
for cha in data:
       val = ord(cha)
       cipher_val = val + dist
       if cipher_val > ord('z'):
           cipher_val = ord('a') + dist -
           (ord('z') - val + 1)
       datum = datum + chr(cipher_val)
print(' Encrypted Text: ')
print(datum)
OUTPUT
Enter text for encryption: sample
Enter the value for Distance: 10
Encrypted Text:
ckwzvo
Related Questions
drjack9650@gmail.com
Navigate
Integrity-first tutoring: explanations and feedback only — we do not complete graded work. Learn more.