def decode_message(binary_string): # Assuming a fixed bit length of 5 (based on our dictionary) bit_length = 5 text_output = ""
# Loop through the string in chunks of 5
for i in range(0, len(binary_string), bit_length):
chunk = binary_string[i : i + bit_length]
if chunk in my_decoder:
text_output += my_decoder[chunk]
else:
text_output += "?"
return text_output
The objective is to write a function called encoder that takes a string and returns a new "encoded" string. You can choose any encoding scheme you like, as long as you follow the rules: 83 8 create your own encoding codehs answers
| Error | Why It Happens | Fix |
|-------|----------------|------|
| encoded string is empty | Forgot to loop through message | Add for (var i = 0; i < message.length; i++) |
| Spaces disappear | Space not in encodingMap | Add ' ': ' ' to map |
| Decoding returns gibberish | Decoding map built incorrectly | Ensure decodingMap[value] = key is correct |
| Infinite loop in decode | Not incrementing i properly | Always increment i by found length or 1 |
| Uppercase letters fail | Map only has lowercase | Use .toLowerCase() on each char | The objective is to write a function called
Here's a basic approach to creating your own encoding scheme: | Error | Why It Happens | Fix
Objective: The goal of the "Create Your Own Encoding" assignment is to teach students how computers store text using binary numbers. Students are tasked with creating a custom mapping between characters (letters, numbers, symbols) and unique binary sequences.
Key Concepts:
Here's a Python function implementing our encoding scheme:
def encode_message(message, shift):
encoded_message = ""
for char in message:
if char.isalpha():
ascii_offset = 65 if char.isupper() else 97
encoded_char = chr((ord(char) - ascii_offset + shift) % 26 + ascii_offset)
encoded_message += encoded_char
else:
encoded_message += char
return encoded_message
# Example usage
message = "Hello, World!"
shift = 3
encoded = encode_message(message, shift)
print(f"Encoded message: encoded")