In addition to displaying the most common word, they want to be able to display the total number of distinct words and the total number of words in the file. Also, they need to be able to generate a list of all the words along with the number of times they occur.
The users would like to be able to call this tool from a script so querying the user for what they want to do won't work.
They also tell you that it is essential that your program work quickly even on really big files. Consider what type of data structures will be necessary to support this requirement.
Incorporate into your README document a discussion of the data structures you've chosen. Compare your choice with other alternatives.
Also in your README document, carefully specify your definition of a word. Consider this discussion of what is a word and compare this to your definition of a word.
I would advise against hard-coded limits on word size etc. Consider how long words can get!
How will the user specify which of these new options they would like?
Consider that users have expressed a strong desire to be able to automate the use of this tool with a script.
Add a section to your MANPAGE document regarding your new user interface.
Also, add to your MANPAGE some examples of valid and invalid words and specify any hardcoded limits on filename size, etc. embedded in your code.
If you have multiple source code files, describe their purpose and their relationship to each other in your README.
Organize these changes into verison descriptions. Describe version 1 (homework 1). Describe changes for version 2. Describe changes for version 4 (homework 4).
For each bug, note the date found, a brief description of what you did to fix it, how long it took you and what you could have done differently to have avoided it in the first place.
If you haven't yet fixed a given bug, make a note to that effect.
You should include a total time in minutes for each of the following categories:
Add or update the following lines:
your_username TAB TOTAL_HW2 TAB time_in_minutes
your_username TAB ESTIMATE_HW2 TAB time in minutes
your_username TAB TOTAL_ALL_HW TAB time_in_minutes
your_username TAB LINES_OF_CODE_HW2 TAB lines_of_code
your_username TAB LINES_OF_DOCUMENTATION_HW2 TAB lines of documentation
Don't forget to estimate how long it will take you to do this homework before you start !
These names *must* be exact!!!