CI130 Project Due 5/10/21
Program Specification:
Using the techniques presented during this semester create a complete C++ program to emulate an
Encryption/Decryption Machine. The machine will be capable of the following:
Encrypt a string entered by the user
Choose between two different encryption methods
Decrypt a string entered by the user
Choose between two different decryptions methods
Decrypt without knowing the encryption method (provide all possible outputs)
The interface must be professional and fully intuitive to the user
The program will be menu driven.
The program will use a class to define and implement each of the methods as member functions and will
store the original string and the encrypted/decrypted strings as data members.
In addition to using a class you must also use all the major structures we used this semester including:
Selection statements (if, if-else, switch) the appropriate one(s) of course
Loops (while, for, do-while) the appropriate one(s) of course
Standard Libraries (don’t recreate the wheel)
Functions
Arrays
The two encryption/decryption methods are:
Substitution cipher
Caesar cipher
You will need to research each and determine how to implement them. Remember in the case of the
Caesar cipher there are 25 possible shifts, you must be able to choose or test for all 25 options.
Grading:
Use of appropriate techniques/code optimization 30%
Functionality (based on definition above) 60%
Appropriate commenting of code 5%
Interface design 5%
Project will be submitted electronically.
学霸联盟