CS286 -- Lab 4: Compressing |
|
Objectives Addressed
PurposeThis lab assignment is designed to provide exposure to an example of a greedy algorithm and develop more advanced software design skills. AssignmentYou are to design a C++ program that will compress and uncompress the words.txt file. Your program should allow for two forms of compression:
You may assume that the file consists of a total of 28 symbols (newline, end of file, and the twenty-six lowercase letters of the English alphabet). If you choose to make your program capable of handling a larger set of symbols, be sure to mention this in your report. Although not required, you may wish to consider using command line arguments for the user interface. You should consider the following questions when preparing your report:
Design DecisionsWhile the concepts implemented in this assignment are not difficult, the details involved in implementing them are not trivial. Be sure to spend adequate time in the design stages before moving on. I have intentionally left many of those design decisions for you to discover. Week 9 demo (due beginning of week 9 lab)You will be required to demonstrate your FLC algorithm for compressing and uncompressing a text file. DEMO FILE Lab report (due 4:00pm, Friday of week 10)Each pair should submit one lab report. The report need not be self-contained. Your report should include:
Test FilesTemplate Lab ReportAs with any report you submit, correct spelling and grammar are required. In addition, your report should be submitted electronically following the Electronic Submission Guidelines. (You may wish to consult the sample report before submitting your report.) Be sure to keep copies of all your files, in case something gets lost. It may be wise to keep a diskette backup as well. If you have any questions, consult the instructor. |
© 2001-2003 Dr. Christopher C. Taylor | Office: CC-27C | Phone: 277-7339 | Last Updated: Fri Apr 25 19:47:34 2003 |
I am responsible for all content posted on these pages; MSOE is welcome to share these opinions but may not want to. |