COIT 20245 : Java Console Program
Code- COIT 20245 Assignment help
Subject- Java Console Program Assignment help
This assessment item relates to the course objectives as in the Unit Profile.
For this assignment, you are required to develop a Java Console Program to demonstrate you can use Java constructs including input/output via a command line, Java primitive and built-in data types, Java defined objects, selection and looping statements, methods, and various other Java commands. Your program must produce the correct results.
You are only allowed to use techniques which have been covered in the first six weeks of the course, you must use the Scanner object for input and no advanced data structures like arrays will be used. Instructions for this appear in the implementation section of this specification.
What to submit for this assignment:
The Java source code:
A report including a flow chart (UML activity diagram) to depict your validation loop for reading the number of nights, how long it took to create the program, any problems encountered, and screenshots of the output produced. (Use Alt-PrtScrn to capture just the console window and you can paste it into your Word document). You should thoroughly test your program.
Important: For this assignment, you are required to paste your source code as an appendix into your report, do not worry about the formatting loss.
You will submit your files by the due date using the “Assignment 1 Submission” link on the Moodle unit website in the Assessment Block or in the assessment tile.
Yeppoon Caravan Park program.
The Yeppoon caravan park offers powered sites for your caravan which also includes water. The caravan park boasts a beautiful swimming pool, children’s play area, a bar-b-que area, kiosk, coin laundry and amenities (showers and toilets) which are being cleaned constantly.
The management wants to encourage guests to stay more nights at the caravan park and they have decided to give the guests a discount for the more nights stayed.
The discounted pricing scheme is as follows:
Up to five nights stay will be the standard price of $14.50 per night and $4.95 per guest.
The next five nights (up to ten) will be $12.50 per night and $3.95 per guest.
All nights stayed over ten nights will be $10.50 per night and $2.95 per guest.
You are to write a Java Console Application (YeppoonCaravanPark.java) which will allow staff to enter the details of N booking names and the number of nights stay and guests for each booking. N should be equal to the highest digit in your student ID, use N=3 if your highest digit is less than three. For each booking the program will prompt for and accept the booking name and the number of nights stay and guests for the booking, it will then display the charge (see sample output below for formatting details).
When all the bookings have been entered you need to report the maximum and minimum number of nights per booking and the relevant booking name, the average number of nights per booking and the total charges which have been collected.
The required Java Console Application should allow the user to:
1. For each of the N bookings: enter the booking name, and then enter the number of nights to stay and the number of guests. The program will output the charge for the booking. All dollar values will be formatted to two decimal places (see implementation below with help for doing this).
2. You must ensure the booking name is not blank so you must implement a validation loop to ensure that a booking name is entered. For this assignment, there is no need to ensure the name is a valid name (e.g. entering 1 for the name would be allowed). The number of nights stay and number of guests must be greater than or equal to one and you will also need to implement validation loops to ensure that a valid number of nights and guests are entered.
The program will number each booking in the input prompt.
3. When N bookings have been entered, you will output a heading for the statistics “Statistical information for Yeppoon Caravan Park”, the minimum and maximum number of nights stay and the booking names with these minimums and maximums, and then what the average number of nights per booking is (formatted to two decimal places) (see sample output below). Note: If more than one booking has an equal maximum or minimum nights you just need to only output one booking name.
4. Display a welcome message at the beginning “Welcome to the Yeppoon Caravan Park System” and an end message e.g. “Thank you for using the Yeppoon Caravan Park Management System” and the final line “Program written by <your student ID>” (see sample output below).
The numeric literal values N, number of nights for the different discount levels and booking costs must be represented as constants.
A large number of students have never written a program before so this is a fairly simple assignment which can be written in the main method of your class. Follow the steps outlined here and build your program up in a step by step fashion and always compile your program at each stage so you are always working on error-free code.
Start by creating your YeppoonCaravanPark class which will contain just the main method, COMPILE! (Fix any errors and repeat)
Implement the welcome message, COMPILE, RUN and TEST!
Declare your Scanner object(s), COMPILE!
Note: In order to combat the problem of the Scanner objects reading both textual and numeric data a good way to counter this is to declare two Scanner objects, one for reading text and another for reading numbers, or you can clear the buffer after the int read using nextLine()
Create a loop to loop N Times, COMPILE, RUN and TEST! (use N = 3 for development)
Declare variables to hold the booking name and the number of nights to stay and guests (String and ints), COMPILE, RUN and TEST!
Within the loop: prompt and read the booking name, COMPILE, RUN and TEST!
Add the prompt and read for the number of nights to stay, COMPILE, RUN and TEST!
Add the prompt and read for the number of guests, COMPILE, RUN and TEST!
Calculate the booking charges using the pricing structure above, COMPILE, RUN and TEST until this is correct.
Output the description of the transaction (see sample output below)
Output all dollar values and average to two decimal places:
USE: System.out.printf("%.2f", charge);
Add the validation loops for reading the data (you can do this last if you like)
Use if statements to determine if the number of nights stay is maximum or minimum, (you will have to think about this). Output the minimum and maximums after the loop, COMPILE and RUN until you have this correct. You may want to set your original max and min variables to very small and very large numbers using Integer.MIN_VALUE and Integer.MAX_VALUE.
You will need to add up the number of nights stay as you go so you can calculate the average.
After the loop, you will output the statistics which you have gathered in the loop. You should have the maximum and minimum number of nights stayed and the corresponding booking names and the total amount of charges collected.
Calculate the average number of nights stayed per booking.
Output the statistics as indicated in the screen shot below.
Finally, print the end message.
Your program should be well laid out, commented and use appropriate and consistent names (camel notation) for all variables and objects. Meaningful comments need to be placed before classes, methods and in the body of the code including variables.
For this assignment, you will not worry about checking data types.
Refer to a Java reference textbook and the unit and lecture material (available on the course WEB
COIT20245, 2021 Term One - Page 4 of 5
site) for further information about the Java programming topics required to complete this assignment.
Check the marking guide (last page) to ensure you have completed every task. You need to match the output as shown below including line spacing.