1. TicketsRUs needs an application to calculate ticket prices. There are three ticket prices:
• Orchestra $85 each
• Mezzanine $70 each
• Balcony $45 each
There is also a 15% discount on matinee performances.
Your application has the GUI shown below.
With the following named components:
Component
|
Type
|
Purpose
|
txtNum
|
JTextField
|
Input for number of tickets
|
chkMatinee
|
JCheckBox
|
Check if matinee performance
|
radOrchestra
|
JRadioButton
|
Check for orchestra tickets
|
radMezzanine
|
JRadioButton
|
Check for mezzanine tickets
|
radBalcony
|
JRadioButton
|
Check for balcony tickets
|
btnCalc
|
JButton
|
Click to calculate price
|
txtEach
|
JTextField
|
Displays price of each ticket
|
txtTotal
|
JTextField
|
Displays total price
|
Clicking the CalcPrice button should determine the price per ticket and the total price based on the user's input and display in txtEach and txtTotal. You should make sure the number of tickets is entered and a ticket type is selected, otherwise give an error message.
The action listener for btnCalc is set up as follows.
btnCalc.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
calcPrice(); //write the code for this method
}
});
Write the calcPrice method that is called by the action listener. This class method has access to all of the GUI components. You DO NOT HAVE TO CODE THE GUI. ONLY write the code for this method which does all the work. The header for the method is:
private void calcPrice()
2. Employees at a certain company get a yearly bonus based on years of service. The bonus is a percentage of their annual salary based on the table below.
Years of Service
|
Bonus Percentage
|
< 5
|
3%
|
5 - 14
|
7%
|
15++
|
12%
|
Create a class called Employee that can be used for this.
It should have attributes of
• Name;
• Years; and
• Salary.
Create the following methods.
• Default constructor to initialize all attributes
• Get/Set for name, years, salary
• Get to calculate and return bonus rate
• Get to calculate and return bonus amount
This class will be used with the Bonus Calculator GUI shown below.
With the following named components:
Component
|
Type
|
Purpose
|
txtName
|
JTextField
|
Input for name
|
txtYears
|
JTextField
|
Input for years
|
txtSalary
|
JTextField
|
Input for salary
|
btnCalc
|
JButton
|
Click to calculate bonus
|
txtBonusPercent
|
JTextField
|
Displays bonus percentage
|
txtBonusAmount
|
JTextField
|
Displays bonus amount
|
You DO NOT have to code the GUI.
The action listener for btnCalc is set up as follows.
btnCalc.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
calcBonus(); //write the code for this method
}
});
3. A trucking company has an application to track data from their trucks regarding miles driven and fuel used each month. This information is stored in a file named "trucks.txt" . This table has the following fields.
TruckID
|
Truck Number (String)
|
Miles
|
Miles Driven (double)
|
Fuel
|
Fuel Used (double)
|
Format of file - note the # delimiter character between fields
TruckID#miles#fuel
The application has a button that is clicked to read each line of the file and calculates and displays in the console the total miles driven, total fuel used, and average miles per gallon. You DO NOT have to write a separate class to process the data. The output in the console should look like:
Total miles driven by all trucks xxx
Total gallons of fuel used yyy
Average miles per gallon for the fleet zz.zz
The class method readFile() is called by the action listener to do the work. Write the code for this method.
4. Assume a College database has a table to keep transcript data on students. The transcript table has fields for SSN, TotalPoints, and TotalCredits. You are to design an application that allows a student to input their SSN into a textbox (txtSSN) and press a button (btnCalc). The students GPA is calculated (divide points by credits) and displayed in txtGPA.
Describe the process/steps to do this. Write pseudocode/comments or code where you can. You DO NOT have to have complete working code, you need to describe the necessary steps and WHERE things need to be coded.