Project ID:
625968
Project Type:
Fixed
Budget:
$30-$250 USD
Project Description:
Need help developing two java programs for homework extra credit.
Program 1:
A. Create a program that has a GUI and calculates earnings and tutoring time by doing the
following:
1. Create a GUI that allows a user to enter the following into labeled textfields:
• Number of minutes for tutoring session (should be a positive decimal number)
• Earnings in dollars and cents received (should be positive decimal number)
a. GUI should be built using javax.swing components jButton, jLabel, jTextField,
jTextArea, jFrame, and jPanel.
2. Implement functionality for each of the following application buttons:
• “Quit” button: Should exit application
• “Enter” button: Accepts entered number of minutes and earnings; as earnings
information is entered, it is stored in a two-dimensional array
• “Run Report” button: Calculates total minutes of tutoring provided, average wages
earned per hour, total earned to date, and determines if average wage per hour is
below, average, or above minimum wage
Note: For an example, see the attached “Sample GUI.”
3. Use a two-dimensional array to store the entered minutes tutored and earnings
received information for each tutoring session, as illustrated in the attached “Two-
Dimensional Array.”
4. Implement the “Run Report” button to iterate through the two-dimensional array
using a nested for-loop to display the earnings data to the jTextArea, as illustrated in
the attached “Earnings Entered.”
5. Implement the “Run Report” button to calculate the following:
• Total minutes tutoring provided (as a decimal number)
• Average wage per hour (in dollars and cents)
• Total earnings (in dollars and cents)
• Wage analysis, determined based on comparison of average per hour earnings and
current minimum wage, using the following logic:
- if average wages per hour is < minimum wage, then below average
- if average wages per hour is > minimum wage AND ? minimum wage × 2.00,
then average
- if average wages per hour is > minimum wage × 2.00, then above average
6. Display resulting calculations in GUI text area in the required format, as illustrated in
the attached “Calculations Display.”
Note: All results from calculations should be viewable in the text area. Consider
appending to the text area as you write out information.
7. Use exceptions to handle invalid user entries for the following situations:
• If minutes entered is less than or equal to zero, throw exception.
• Tutors should not tutor for longer than 4 hours per day. If minutes entered is
greater than 60 × 4 = 240 minutes, throw exception.
• Tutors must be paid for their tutoring service. If earnings entered is not greater
than or equal to zero, throw exception.
Note: The program should not terminate abruptly if any of these situations are
encountered. The application should print a message “Invalid input. Please try
again.” and let the user continue using the application.
and Program 2:
A. Develop an application that reads your listings.txt file, analyzes the property listed per agent, and outputs a report to an agentreport.txt file. Your application should do the following:
1. Prompt the user for the name of the input file (listings.txt).
2. Use an unbuffered file input stream to open listings.txt file and read in property listings.
3. Store each property type into a Set.
a. Convert property type to upper case before adding to your Set using method(s) from String class.
b. Sort your Set of property types alphabetically.
4. Use a Map to calculate total property listed in dollars and cents for each agent id.
Note: Agent id would be the key, and accumulated total of property listed would be the value.
• Sort your Map by agent id.
• Create an agentreport.txt file.
5. Use an Iterator to iterate through your Set and write your sorted set of property types sold by the agents to the agentreport.txt file using unbuffered file output stream.
6. Iterate through your Map to write your sorted pair of agent id and total property listed to the agentreport.txt file using unbuffered file output stream.
B. Develop an application that reads your listings.txt file, analyzes the properties listed, and outputs an overview of properties listed to an overview.txt file. Your application should do the following:
1. Prompt the user for the name of the input file (listings.txt).
2. Open the listings.txt file and read in property listing information using a buffered FileReader.
3. Count the total number of property listings for sale.
• Use buffered FileWriter to write the count of the number of property listings to your overview.txt file.
4. Calculate the total value of property for sale.
• Use a buffered FileWriter to write the total value of properties currently for sale.
5. Store each property id into an ArrayList.
a. Sort the ArrayList of property ids using natural ordering.
b. Use a for-each loop to iterate through the sorted ArrayList and write property ids to overview.txt file using buffered FileWriter.
6. Use buffered FileWriter to write the total value of the properties listed and the total number of properties currently for sale.
I have all example documents that I can e-mail to winning bid.
Skills required:
Java
Additional Files:
project1.zip
project2.zip