Program 1: Shipping Fees
The Acme Company sells Widgets at $2.00 each. A customer has the following options for shipping:
- Ground Delivery: 7 to 10 days $ 5.00
- Express Delivery:
3. 2 days $ 10.00
4. Overnight $ 20.00
Write a program using the steps in the lecture titled “Even More Algorithm Practice” from this module.
Be sure to do the following:
- Prompt the User for how many Widgets they wish to purchase.
- Error check the input to make sure that it’s not zero.
- Use an outer IF/ELSE where the IF is used to display an error message if the input is zero and the ELSE is used for steps 3 through 12 below and for printing the receipt.
- Prompt the User for the delivery option.
- Compute the sub-total cost of the Widgets.
- Compute sales tax on the sub-total cost of the Widgets. Use 8%.
- Compute the total cost of the Widgets.
- Determine the delivery cost.
- Use an IF/ELSE structure to determine Ground or Express fee.
- Nest an inner IF within the Express option to determine the 2 day or overnight fee.
- Once the shipping fee has been selected, add it to the total cost of the Widgets.
- Format all dollar amounts with two decimal places and add a dollar sign to each one.
- Format the sales tax with two decimal places.
- Only print out the receipt if the number of widgets is valid.
- Print out the receipt showing the following:
Number of Widgets:
Sub-Total Cost:
Sales Tax:
Sub-Total with Tax:
Shipping Fee:
Total Cost:
You will also need to do the following for the prologue section:
- Create an initial algorithm of the basic steps.
- Develop the refined algorithm from the initial algorithm.
Be sure to include with your program as documentation:
- The Program Prologue
- The Input data
- The Output data
- Any Formulas you may have.
- The Initial Algorithm
- The Refined Algorithm
- Line-by-line documentation within the body of code.
- The code to pause your output screen.
NOTE 1:
- DO NOT use the “return” code, end, break, continue, or exit to force an exit from within your IF/ELSE structure.
- Let the program progress to the end of the main function.
- The end of the main function is the only place that the “return” should be placed.
- A switch statement is the only place that the break command should be placed.
NOTE 2:
1. Declare all variables within the data declaration section of each class and method. (-5)
2 Do not get input on the same line as a variable declaration. (-5)
3. Do not place an equation for computation on the same line as declaring a variable. (-5)
4. Do not place an equation for computation on the same line as input. (-5)