encoded = encode(secret) print("Encoded list:", encoded)
Once you submit this, challenge yourself: modify the shift value or try a non-linear transformation. That’s where real computer science begins. 8.3 8 create your own encoding codehs answers
Remember: “Creating your own encoding” means you choose the rule. Whether you shift by 5, XOR by 42, or build a custom dictionary, the key is ensuring that decoding perfectly reverses encoding. Whether you shift by 5, XOR by 42,
def encode(message): """ Encodes a string into a list of integers using a custom shift cipher. Each character is converted to its ASCII code, then shifted by +5. """ encoded_list = [] for ch in message: # Custom rule: shift ASCII value by 5 encoded_value = ord(ch) + 5 encoded_list.append(encoded_value) return encoded_list def decode(encoded_list): """ Decodes a list of integers back into the original string. Reverses the shift by subtracting 5 from each integer. """ decoded_message = "" for num in encoded_list: original_char = chr(num - 5) decoded_message += original_char return decoded_message secret = "Hello World" print("Original:", secret) """ encoded_list = [] for ch in message:
| Scheme | Rule | Example ('A') | |--------|------|----------------| | | Add a fixed number to each character’s position | A(0)+3 = 3 | | ASCII-based | Use ord() but modify it (e.g., subtract 30) | 65 → 35 | | Custom Alphabet Map | Create a dictionary: 'A':1, 'B':2,… | 1 |