1) This program has six required outputs and involves
searching and sorting an array of integers.
Write a Java application that initializes an array with the
following numbers, in this order:
23, 17, 5, 90, 12, 44, 38, 84, 77, 3, 66, 55, 1, 19, 37, 88,
8, 97, 25, 50, 75, 61, and 49
Then display the unsorted values. This is required output #1
of 6 for this program.
Using a sequential search of the unsorted array, determine
and report the 1-relative (i.e. 1, 2, 3, 4, etc.) positions of the following
numbers in the array (or -1 if not found), and the number of searches required
to locate the numbers: 25, 30, 50, 75, and 92. This is required output #2 of 6.
Then display the total number of searches for all five
numbers. This is required output #3 of 6.
Sort the numbers using any algorithm of your choice and then
display the sorted array. This is required output #4 of 6.
Using a binary search of the sorted array, determine and
report the 1-relative positions of the following numbers in the array (or -1 if
not found), and the number of searches required to locate the numbers: 25, 30,
50, 75, and 92. This is required output #5 of 6.
Finally, display the total number of searches for all five
numbers. This is required output #6 of 6. (There are six required sets of output as numbered in the above paragraphs.)
Try to create an object-oriented solution for your solution
vs. a procedural one. For example, you might have a class that stores an array
passed by a driver class, with methods for sorting the array, searching the
array via a sequential search, searching the array via a binary search, and
output the current contents of the array. The driver class could not only pass
in the initial array values but call various methods to perform the searches,
sorting, and array contents display. You may use any output type class you want
(e.g. Scanner, JOptionPanel)
2) You may use any Java Integrated Development Environment
(IDE) you choose to develop your source code, compile and link your code, and
execute your program (jGRASP is recommended). Or you may use the Windows
Command Prompt.
You are to submit the following deliverables in a single
Microsoft Word file in this order, and clearly labeled.
a) A screen snapshot of your Java source code (all file(s)
shown separately) displayed in the IDE or Windows editor showing a successful
compilation if possible (only the beginning of the source file(s) are
necessary).
b) A listing of your entire source code file(s).
c) A screen snapshot of all of your program’s outputs for
the specified values in Step #1. For this program there are 6 (six) total sets
of item(s) to be output. Failure to show any of them will result in lost points.
In order not to confuse the grading process, and possible lose points, do not
include any other outputs besides these six items.
4) You will be evaluated on (in order of importance):
a) Following directions and inclusion and packaging of all
deliverables in Step #2.
b) Correct execution of your program (this includes proper
compilation). This also includes getting the correct answers!
c) Proper commenting of your Java code and indentation (as
specified in the text).
d) Neatness in packaging of your deliverables (to include
putting the items in Step #2 in the correct order).