# Lab 8

### Instructions

• Turn in the code (a cpp file or ideone.com link), and the run outputs as requested below.
• Remember to format the code as described and the book and text, and to include comments including complete commetns at the beginning of the program.

Feature %
Program correctness and completeness with respect to defination 70%
Code Format (Indenting, variable names) 10%
Turning in the run with your solution to the encoding.. 10%

### Problem 1

Your country is at war and your enemies are using a secret code to com- municate with each other. You have managed to intercept a message that reads as follows:

:mmZ\dxZmx]Zpgy

The message is obviously encrypted using the enemy’s secret code. You have just learned that their encryption method is based upon the ASCII code. Appendix 3 shows the ASCII character set. Individual characters in a string are encoded using this system. For example, the letter “A” is encoded using the number 65 and “B” is encoded using the number 66.

Your enemy’s secret code takes each letter of the message and encrypts it as follows:

```If (OriginalChar + Key > 126) then
EncryptedChar = 32 + ((OriginalChar + Key) – 127)
Else
EncryptedChar = (OriginalChar + Key)
```

For example, if the enemy uses Key = 10 then the message “Hey” would be encrypted as:

Character ASCII code
H 72
e 101
y 121

• Encrypted H = (72 + 10) = 82 = R in ASCII
• Encrypted e = (101 + 10) = 111 = o in ASCII
• Encrypted y = 32 + ((121 + 10) – 127) = 36 = \$ in ASCII
Consequently, “Hey” would be transmitted as “Ro\$.”

Write a program that decrypts the intercepted message. You only know that the key used is a number between 1 and 100. Your program should try to decode the message using all possible keys between 1 and 100. When you try the valid key, the message will make sense. For all other keys, the message will appear as gibberish.

Edit | Attach | Watch | Print version |  | Backlinks | Raw View | Raw edit | More topic actions...
Topic revision: r2 - 2015-11-01 - JimSkon

 Home KenyonCpp Web View Edit Account
 Edit Attach
Copyright © 2008-2019 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TWiki? Send feedback