• + 0 comments
    def getEncryptedLetter(s, k, isUpper=True):
        startChar = "A" if isUpper else "a"
        endChar = "Z" if isUpper else "z"
        num = ord(s)
        k = k % 26
        if num + k > ord(endChar):
            diff = (num + k) - ord(endChar)
            new_num = ord(startChar) + diff - 1
        else:
            new_num = num + k
        return chr(new_num)
        
        
    def caesarCipher(s, k):
        # Write your code here
        excrypted_str = ""
        for i in s:
            if ("A" <= i <= "Z") or ("a" <= i <= "z"):
                excrypted_str += getEncryptedLetter(i, k, "A" <= i <= "Z")
                continue
            excrypted_str += i
        return excrypted_str