Project Three
Design Due 10 June Program Due 15 June
Intro:
This is a race. Up till now, we have written programs whose sole criterion for success is that it works. Today, we are going to add another criterion, that it work well. I am going to give you a task, and you will be graded first of all, on whether or not you get the task accomplished. Then, extra credit will given for those programs that complete the task in the least amount of time.
Details:
You are going to write a program that is capable of sorting
an array of random integers.
There are several
well known sorting algorithms ( if you don't want to come up with your own ).
Shell sort, selection sort, bubble sort, merge sort, quick sort, and counting
sort. You can come up with your own idea or use one of these.
Here are some other details that might be of interest to you.
- When the program starts, the user is asked several questions. The min random number, the max random number, and the total number of random numbers to be sorted. The user is also asked if they would like to see the sorted and unsorted lists printed. NOTE: this is to be done BEFORE you generate the random numbers and before your preform your sort.
- Assume that for the extra credit challenge, I will set the rang to be 1-1000, and I will ask for 1 million integers to be sorted. I will also not want to see the unsorted and sorted lists.
- I award extra credit to the top 3 time performers.
Grading Criteria
This program is worth 75 points. The largest amount of points a non
compiling program can earn is 25 points. From this total, 2 points per error
will be deducted until no more errors are found or there are no points left.
Style is very important. All variables should have useful names, all lines of code should be indented, and there should be comments about once every 5-10 lines. Each violation is subject to a 2 point deduction to a maximum of 26 points.
For each functionality listed above that is not completed, a maximum 8 point penalty will apply.
The design document will be worth 40 points. 20 points for style ( make yours look like mine as much as possible ) and 20 points for being mostly correct. Your design document need not match your final homework result. This is just a means of getting you thinking about your program.