Update Lesson 2 Task %*f#ncA0#>? to work without libraries
This commit is contained in:
parent
d982e06f98
commit
e2e4599c25
1 changed files with 31 additions and 3 deletions
|
@ -5,7 +5,35 @@
|
|||
# Return codes:
|
||||
# 0 - OK
|
||||
|
||||
rot13 = str.maketrans('ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz',
|
||||
'NOPQRSTUVWXYZABCDEFGHIJKLMnopqrstuvwxyzabcdefghijklm')
|
||||
def isUppercase(chr):
|
||||
if chr >= "A" and chr <= "Z":
|
||||
return True
|
||||
else:
|
||||
return False
|
||||
|
||||
print(input("Enter message: ").translate(rot13))
|
||||
def isLowercase(chr):
|
||||
if chr >= "a" and chr <= "z":
|
||||
return True
|
||||
else:
|
||||
return False
|
||||
|
||||
def isLetter(chr):
|
||||
if isUppercase(chr) or isLowercase(chr):
|
||||
return True
|
||||
else:
|
||||
return False
|
||||
|
||||
string = input("Enter message: ")
|
||||
newstring = ''
|
||||
|
||||
for i in range(len(string)):
|
||||
if not isLetter(string[i]):
|
||||
continue
|
||||
uppercase = isUppercase(string[i])
|
||||
newOrd = ord(string[i]) + 13
|
||||
if isLetter(chr(newOrd)) and uppercase == isUppercase(chr(newOrd)):
|
||||
newstring += chr(newOrd)
|
||||
else:
|
||||
newstring += chr(newOrd - 26)
|
||||
|
||||
print(newstring)
|
||||
|
|
Reference in a new issue