Thursday, August 8, 2013

ITS 320 Java Program 3



 
Decision Control and Loops with User Interaction
1) Write a Java application that prompts the user for pairs of inputs of a product number (1-5), and then an integer quantity of units sold (this is two separate prompts for input values). You must use a switch statement and a sentinel-controlled loop (i.e. a loop that stops execution when an out of range value, such as -1, is input). All 15 items below are for a single purchase. There are five sets of inputs as follows:

Product 1 1 unit (cost is $2.98 per unit)
Product 2 2 units (cost is $4.50 per unit)
Product 3 3 units (cost is $9.98 per unit)
Product 4 4 units (cost is $4.49 per unit)
Product 5 5 units (cost is $6.87 per unit)
Your application must calculate and display the total retail value of all products sold, after all 5 pairs of inputs are completed. You must also display the total after each new pair of input values is entered.
(This program was taken from Exercise 5.17 on page 228 of Deitel & Deitel's "Java How to Program (Sixth Edition)" (2005 by Pearson Publishing Co.))
2) You may use the Windows Command Prompt command line interface or any Java IDE you choose to compile and execute your program.

3) You are to submit the following deliverables to the Assignment Dropbox in a single Microsoft Word file: a) A screen snapshot of your Java source code (just the beginning is OK) as it appears in your IDE (e.g. jGRASP, Net Beans, Eclipse, etc.) or editor (e.g. a Windows Command Prompt DOS "more" of the .java file's first screen).
b) A listing of your entire Java source code in the same Microsoft Word file as item a), and following item a). You can simply copy and paste the text from your IDE into Word. Be sure to maintain proper code alignment by using Courier font for this item.
c) A screen snapshot of your program’s input and output in the same Microsoft Word file, and following item b). You must include screen snapshots of all inputs and all outputs, not just a sample.

4) Your instructor may compile and run your program to verify that it compiles and executes properly. 

5) You will be evaluated on (in order of importance): a) Inclusion of all deliverables in Step #3.
b) Correct execution of your program.
c) Adequate commenting of your code.
d) Good programming style (as specified in the textbook's examples).
e) Neatness in packaging and labeling of your deliverables.

Deficiencies in any of the above areas are subject to deductions in each area, based on the severity of the deficiency.
6) Here is some pseudocode/skeleton Java code for one possible solution to the program to get you started (this shows procedural code, but an object-oriented solution would have been better, since Java is a pure object-oriented language): 
 
import the classes you need
main
declare productNo and quantity variables
declare and initialize lineAmount and orderAmount variables
set up a String for your output via the Scanner class (or you may use the JTextArea
GUI component – this will require additional research beyond the textbook!)
start filling the String (or JTextArea) with the headers for Product, Quantity, Line
Cost, and Total Cost
prompt the user for the first productNo
while the productNo is not the sentinel value of -1
get the quantity
if the quantity is -1 then exit
switch on productNo
in each case, determine the new lineAmount
add the lineAmount to the orderAmount
add the new subtotal/order line information to the output String (or JTextArea)
get the next productNo
output the total orderAmount
7) Here is an example of what the beginning of your output might look like after the first product has been input and the information for the second one is starting to be entered. Note that this output uses a JTextArea GUI component for easy assembly and output of multiline text.

It is NOT required that you use a JTextArea component! You may use the Scanner class if you want.
If you do want to use a JTextArea component though, you will have to do some research beyond our textbook. Note that this is a frequent activity you'll find yourself doing day-to-day in any IT programming job. Not all answers are "right in the book"! Look at it as a learning opportunity to familiarize yourself with the Java API.
This would continue with a quantity of 2 for Product No. 2, then Product 3 with a quantity of 3, then Product 4 with a quantity of 4, and finally Product 5 with a quantity of 5.
Therefore the quantity of each product matches the Product No. And there are 15 total units for order.
Note that there is a single correct answer for the order total!
8) You must put all your screen snapshots and source code to a single Microsoft Word file.

No comments:

Post a Comment