
IN JAVA PLEASE
---------------------------------------------------
Main Menu
1 : Student Management
2 : Course Management
0 : Exit
Enter your selection: 1
-----------------
Student Management Menu:
Choose one of:
A - Search add a student
B - Delete a Student
C – Print Fee Invoice
D – Print List of Students
X – Back to Main Menu
Enter your selection: D
PhD Students
------------
- Zydoun BenSellam
- Erica Belksiri
MS Students
------------
- Caleb Sidi Kacem
- Erika Jones
- Walid Wali
Undergraduate Students
------------
- Ed Johnson
- Willian Jones
- Kirby Sons
Student Management Menu:
Choose one of:
A - Search add a student
B - Delete a Student
C – Print Fee Invoice
D – Print List of Students
X – Back to Main Menu
Enter your selection: A
Enter Student’s ID: ew44-yye
Invalid id format or ID already exists
Try again later!
Student Management Menu:
Choose one of:
A - Search add a student
B - Delete a Student
C – Print Fee Invoice
D – Print List of Students
X – Back to Main Menu
Enter your selection: A
Enter Student’s ID: zb5954
Student Type (PhD, MS or Undergrad): PhD
Enter Remaining information
Zaydoun BenSellam|Gary Richardson|Fuzzy Toplology|20300,94442
(No need to check anything: we assume that the user enter valid information, including lab numbers!)
[ Zaydoun BenSellam ] added!
Student Management Menu:
Choose one of:
A - Search add a student
B - Delete a Student
C – Print Fee Invoice
D – Print List of Students
X – Back to Main Menu
Enter your selection: X
---------------------------------------------------
Main Menu
1 : Student Management
2 : Course Management
0 : Exit
Enter your selection: 0
Take Care!
Understanding the structure of lec.txt
Each line in lec.txt represents a class being offered at Valence College.
A class is either a lecture (LEC) or a lab (LAB). A lecture (LEC) is characterized by:
- Class Number (CN), a unique five-digit number assigned for each lecture/lab
- Prefix (like COP3330)
- Title (like Introduction to Object Oriented
- Location (like CB 2-201)
- Graduate or undergraduate.
- Modality: Online, Face-to-Face(F2F) or Mixed Mode (Mixed)
- If Modality is F2F or Mixed, then the following entry is the location where that
class is taking place. The next YES/NO field is to specify whether that class
has a lab or not. When a non-online class has a lab, the labs are listed right
after. See below for more information about the labs. Online sections don’t have
labs.
- Credit hours is the last field of any lecture.
Examples:
89745,COT6578,Advanced
32658,COT6578,Advanced Computer theory,Graduate,Mixed,LPS-35,No,4
That means that the college offers two sections of COT6578, one is F2F and the other
is online. Both of those sections don’t have labs.
When a lecture has a lab, the labs’ information is provided
right after the lecture information
Example:
69745,COP5698, Programming Languages,Graduate,F2F,CB2-122,YES,4
19745,MSB-123
36598,PSY-100
20315,HSA1-116
That means the COP5698 with cn 69745 has three labs. 19745, 36598 and 20315 are the
cns of the labs. MSB-123, PSY-100 and HSA1-116 are the building-room numbers where
those labs are scheduled to take place.
Note that if the Modality is Online, then the line of the
lec.txt has the form:
CN,PREFIX,LECTURE TITLE,GRADUTE/UNDERGRADUTE/ONLINE,CREDIT HOURS
Example:
36636,SOF2058,Introduction to Software,Undergraduate,Online,3
![You may find the following hierarchy useful when you code your classes.
A fee invoice for an MS student should look like
VALENCE COLLEGE
ORLANDO FL 10101
The purpose of this project is to create a fee invoice application for
students attending Valence College, a college in the State of Florida. There
are two types of students: graduate (PhD and MS) and undergraduate. An out-
of-state undergraduate student pays twice the tuition of a Florida-resident
undergraduate student (all pay the same health and id fees of $35). A graduate
student is either an PhD or an MS student. PhD students don't take any
courses, but each has an advisor and a research subject. Each Phd student
must supervise at least one lab. A lab can be supervised by more than one
PhD student (Labs can't be supervised by undergraduate students nor MS
students). MS students can only take graduate courses, and undergraduate
students can only take undergraduate courses.
At this time, Valence College offers the following list of classes/labs:
(Use it in your project as lect.txt).
89745, COT6578, Advanced Computer theory, Graduate, F2F, PSY-108, No, 4
66636, DIG2158, Introduction to Digital Systems, Undergraduate, Online, 3
32658, COT6578, Advanced Computer theory, Graduate, Mixed, LPS-35, No, 4
69745, COP5698, Programming Languages, Graduate, F2F, CB2-122, YES, 5
19745, MSB-123
36598, PSY-100
20315, HSA1-116
56980, CDL2587, Introduction to Computers, Undergraduate, F2F, MSB-116, YES, 4
98123, RMA-008
91862, RMA-008
95315, RMA-008
36636, SOF2058, Introduction to Software, Undergraduate, Online, 3
12658, LOG5578, Logic and Proof, Graduate, Mixed, LPS-35, Yes, 3
98103, CMA-008
90862, RMA-013
95310, RMA-028
60045,COP5690, Programming Languages II, Graduate, F2F, CB2-120, YES, 4
19005, MSB-103
30008, PSY-107
20300, HSA1-16
51180, CDL2587, Introduction to Computers, Undergraduate, online, 3
36637, SOF2058, Introduction to Software, Undergraduate, Online, 3
22658, LOG5578, Logic and Proof, Graduate, F2F, LPS-35, Yes, 3
98000, CMA-008
94442, RMA-013
56510, RMA-028
69970, GOL1091, Introduction to AI, Graduate, Online, 1
An explanation on how to read the list above is provided at the end of
this document.
Undergraduate Student
Example of an MS student:
Name: Emily Jones
Id: em1254
Courses taken: LOG5578
Example of an PhD student:
Name: Zaydoun BenSellam
Id: zb5954
Advisor: Gary Richarson
Research Subject: Fuzzy Topology
Lab supervised: 20300,94442
Student
PhdStudent
Graduate Student
MsStudent
Note that it costs, for undergraduate Florida residents, 120.25 dollars per
credit hour, and all MS students pay $300 per credit hour. in addition to
the $35.00 charged for health and id services. Undergraduate Students with
gpa of 3.5 or higher receive a discount of 25% when the total payments exceed
$500. PhD students pay a separate research fee of $700. Phd students who
supervise two labs are given a discount of 50%, and PhD Students supervising
3 labs or more pay the health and id fees only.
A fee invoice for an undergraduate student should look like
VALENCE COLLEGE
ORLANDO FL 10101
Fee Invoice Prepared for Student:
KJ2959-KARIM JONES
1 Credit Hour $120.25
(Karin, a FL resident, has gpa higher than 3.5 gpa)
CRN CR PREFIX
CR_HOURS
3
$ 481.00
$ 360.75
56980 CDL2587
36637 SOF2058
Health & id fees $ 35.00
$ 876.75
-$219.18
TOTAL PAYMENTS
$ 657.56
Fee Invoice Prepared for Student:
KA2959-ERICKA JUNAID
1 Credit Hour - $300.00
69970 GOL1091
CRN CR_PREFIX CR HOURS
$ 300.00
Health & id fees
$ 35.00
TOTAL PAYMENTS
$ 335.00
A fee invoice for an PhD student should look like
VALENCE COLLEGE
ORLANDO FL 10101
Fee Invoice Prepared for Student:
J02978-John JUNAID
John's research subject: Climate
Change. John supervises three labs or
more.
RESEARCH
Climate Change
$ -700.00
Health & id fees
$ 35.00
Total Payments
$ 35.00
1) In addition to the ProjectDriver class, you will need to add all
the classes shown on the inheritance hierarchy shown above.
(Student, Graduate Student, Undergraduate Student, MsStudent and
PhdStudent). Both Student and Graduate Student are to be made.
abstract. The Student class must contain the abstract method:
abstract public void printInvoice();
Additional classes may be added. See 6) below
2) The abstract method, printInvoice, is to be overridden to display
the right fee invoice, depending on the type of the student. Data
fields of all classes are to be made private.
3) You may use any data structure to store your objects. That is: you
may use an array, array list, LinkedList ...etc.
4) Your code should handle ALL exceptions. The bottom line is that
your code should NOT crash!
5) Your code must have a user-defined exception class called
IdException that handles the ids entered by the user. Note that an
person's ID must be of the form LetterLetterDigit Digit Digit Digit
like er7894. No two persons can have the same id. An exception of
type IdException is thrown when the id entered is either duplicated
or in wrong format. Handle that anyway you see fit!
6) This project requires additional code to manage the courses and
labs. Note that the Java classes and data stuctures needed to
manage the courses/Labs is left to you (the student) to decide on...
7) The main menu of your programs has two options: Student Management
and Class Management. The Student Management option shows a sub-
menu that allows the user to:
Sample Run: Assume that the user enters a valid menu option (for all the menus)
Student Management
Main Menu
1
2
Course Management
0: Exit
Enter your selection: 2
Course Management Menu:
Choose one of:
Course Management Menu:
Choose one of:
B
Course Management Menu:
Choose one of:
A Search for a class or lab using the class/lab number
delete a class
C
Add a lab to a class
A
B
Search for a class or lab using the class/lab number
delete a class
x
Back to main menu
C
Add a lab to a class
x Back to main menu
Enter your selection: c
a. add a student
b. search for a student by id
c. delete a student
d. print the fee invoice of a student by id.
e. Print all students (Just the name) grouped by type. PhD
students together, MS students together and Undergraduate
students together. Something like:
PhD Students
Zydoun BenSellam
Erica Belksiri
MS Students
Caleb Sidi Kacem
- Erika Jones
-Walid Wali
Undergraduate Students
Ed Johnson
Willian Jones
- Kirby Sons
The Class Management option allows:
a) search for a class or lab using the class/lab number
b) delete a class (this requires the deletion of all the
labs associated with that class
c) add a lab to a class when applicable. More information on
classes and labs is given at the end of this document.
(You may add the option that displays the list of classes
and labs to check your code)
Enter your selection:
Enter the Class/Lab Number: 12345
[ ]
A
B
Search for a class or lab using the class/lab number
delete a class
C Add a lab to a class
X
Back to main menu
Course Management Menu:
Choose one of:
Enter your selection: A
Enter the Class/Lab Number: 98103
Lab for 12658, LOG5578, Logic and Proof]
Lab Room CMA-008
B
A Search for a class or lab using the class/lab number
delete a class
C
Add a lab to a class
x Back to main menu
Enter your selection: B
Enter the Class/Lab Number: 12658
[12658, LOG5578, Logic and Proof deleted!
Enter Lab or Lecture: Lecture
Enter the Lecture Number to a Lab to: 66666
66666 is valid. Enter the rest of the information:
GOL1091, Introduction to AI, Graduate, Online, 1
(Assume that the user enter valid information here)
Lecture added cessfully!
't forget to update :
(don't
Course Management Menu:
Choose one of:
A Search for a class or lab using the class/lab number
B
delete a class
C
Add a lab to a class
X Back to main menu
Course Management Menu:
Choose one of:
A Search for a class or lab using the class/lab number
delete a class
(don't forget to update lec.txt!)
Course Management Menu:
Choose one of:
A Search for a class or lab using the class/lab number
delete a class
B
C Add a lab to a class
x Back to main menu
Enter your selection: c
Enter your selection: C
Enter Lab or Lecture:
Lecture
Enter the Lecture Number to a Lab to: 66667
66667 is valid. Enter the rest of the information:
GOL1091, Introduction to AI, F2F, LPT-35, No, 1
Course Management Menu:
Choose one of:
A Search for a class or lab using the class/lab number
delete a class
B
C - Add a lab to a class
X - Back to main menu
B
C
Add a lab to a class.
X Back to main menu
Enter your selection: A
Enter the Class/Lab Number: 12658
[12658, LOG5578, Logic and Proof]
Enter Lab or Lecture: Lab
Enter the Lecture Number to a Lab to: 12658
No Such Lecture Exists!
Enter your selection: x (treated as X)](https://content.bartleby.com/qna-images/question/44870f31-83c6-452e-ba54-77702704a3ca/622b8da7-e89c-4790-beeb-74a5d242ad96/2ikrvtr_thumbnail.png)

Trending nowThis is a popular solution!
Step by stepSolved in 2 steps

- Open the Palace Solution.sln file contained in the VB2017\Chap10\Palace Solution folder. Use Windows to copy the Rectangle.vb file from the VB2017\Chap10 folder to the Palace Project folder. Then, use the Add Existing Item option on the Project menu to add the file to the project. Modify the Rectangle class to use Double variables rather than Integer variables. Change the name of the GetArea method to GetAreaSqFt. Add another method to the class. Use Get AreaSqYds as the method’s name. The method should calculate and return the area of a rectangle in square yards. The application’s Calculate button should calculate and display the number of square yards of carpeting needed to carpet a rectangular floor. Code the btnCalc_Click procedure. Display the number of yards with one decimal place. Save the solution and then start and test the application.arrow_forwardThe case problems in this section introduce two fictional businesses. Throughout this book, you will create increasingly complex classes for these businesses that use the newest concepts you have mastered in each chapter. Marshalls Murals is a company that paints interior and exterior murals for both business and residential customers. Write a program named MarshallsMotto2 that displays the company motto, which is Make your vision your view. Create a second program named MarshallsM0tt02 that displays the motto surrounded by a border composed of repeated Ms.arrow_forwardIn this exercise, you modify the Grade Calculator application from this chapter’s Apply lesson. Use Windows to make a copy of the Grade Solution folder. Rename the copy Grade Solution-Intermediate. Open the Grade Solution.sln file contained in the Grade Solution-Intermediate folder. Open the CourseGrade.vb file. The DetermineGrade method should accept an integer that represents the total number of points that can be earned in the course. (Currently, the total number of points is 200: 100 points per test.) For an A grade, the student must earn at least 90% of the total points. For a B, C, and D grade, the student must earn at least 80%, 70%, and 60%, respectively. If the student earns less than 60% of the total points, the grade is F. Make the appropriate modifications to the DetermineGrade method and then save the solution. Unlock the controls on the form. Add a label control and a text box to the form. Change the label control’s Text property to “&Maximum points:” (without the quotation marks). Change the text box’s name to txtMax. Lock the controls and then reset the tab order. Open the form’s Code Editor window. The txtMax control should accept only numbers and the Backspace key. Code the appropriate procedure. The grade should be cleared when the user makes a change to the contents of the txtMax control. Code the appropriate procedure. Modify the frmMain_Load procedure so that each list box displays numbers from 0 through 200. Locate the btnDisplay_Click procedure. If the txtMax control does not contain a value, display an appropriate message. The maximum number allowed in the txtMax control should be 400; if the control contains a number that is more than 400, display an appropriate message. The statement that calculates the grade should pass the maximum number of points to the studentGrade object’s DetermineGrade method. Make the necessary modifications to the procedure. Save the solution and then start and test the application.arrow_forward
- Which of the following is the name of the Inventory class’s default constructor? Inventory InventoryConstructor Default Newarrow_forwardWrite an Add method that adds the contents of the decPrice variable to the lstPrices control.arrow_forwardEach of the following files in the Chapter.08 folder of your downloadable student files has syntax and/or logical errors. In each case, determine the problem, and fix the program. After you correct the errors, save each file using the same filename preceded with Fixed. For example, DebugEight1.cs will become FixedDebugEight1.cs. a. DebugEight1.cs b. DebugEight2.cs c. DebugEight3.cs d. DebugEight4.csarrow_forward
- Each of the following files in the Chapter.04 folder of your downloadable student files has syntax and/or logical errors. In each case, determine the problem, and fix the program. After you correct the errors, save each file using the same filename preceded with Fixed. For example, save DebugFour1.cs as FixedDebugFour1.cs. a. DebugFour1.cs b. DebugFour2.cs c. DebugFour3.cs d. DebugFour4.csarrow_forwardThe operator used to create objects is = += new createarrow_forwardFor each of the following exercises, you may choose to write a console-based or GUI application, or both. Write a program named CheckZips that is used by a package delivery service to check delivery areas. The program contains an array that holds the 10 zip codes of areas to which the company makes deliveries. Prompt a user to enter a zip code, and display a message indicating whether the zip code is in the companys delivery area.arrow_forward
- In Chapter 9, you created a Contestant class for the Greenville Idol competition. The class includes a contestants name, talent code, and talent description. The competition has become so popular that separate contests with differing entry fees have been established for children, teenagers, and adults. Modify the Contestant class to contain a field that holds the entry fee for each category, and add get and set accessors. Extend the Contestant class to create three subclasses: ChildContestant, TeenContestant, and AdultContestant. Child contestants are 12 years old and younger, and their entry fee is $15. Teen contestants are between 13 and 17 years old, inclusive, and their entry fee is S20. Adult contestants are 18 years old and older, and their entry fee is $30. In each subclass, set the entry fee field to the correct value, and override the Tostring() method to return a string that includes all the contestant data, including the age category and the entry fee. Modify the GreenvilleRevenue program so that it performs the following tasks: The program prompts the user for the number of contestants in this years competition, which must be between 0 and 30. The program continues to prompt the user until a valid value is entered. The program prompts the user for names, ages, and talent codes for the contestants entered. Along with the prompt for a talent code, display a list of valid categories. Based on the age entered for each contestant, create an object of the correct type (adult, teen, or child), and store it in an array of Contestant objects. After data entry is complete, display the total expected revenue, which is the sum of the entry fees for the contestants. After data entry is complete, display the valid talent categories and then continuously prompt the user for talent codes, and display all the data for all the contestants in each category. Display an appropriate message if the entered code is not a character or a valid code.arrow_forwardThe Inventory class contains a Private variable named strId. The variable is associated with the Public ItemId property. An application instantiates an Inventory object and assigns it to a variable named onHand. Which of the following can be used by the application to assign the string "XG45 to the strId variable? a. onHand.ItemId = "XG45" b. ItemId.strId = "XG45" c. onHand.strId = "XG45" d. ItemId.strId = "XG45"arrow_forwardConvert the ProjectedRaises class to an interactive application named ProjectedRaisesInteractive. Instead of assigning values to the salaries, accept them from the user as input.arrow_forward
- Microsoft Visual C#Computer ScienceISBN:9781337102100Author:Joyce, Farrell.Publisher:Cengage Learning,Programming Logic & Design ComprehensiveComputer ScienceISBN:9781337669405Author:FARRELLPublisher:CengageProgramming with Microsoft Visual Basic 2017Computer ScienceISBN:9781337102124Author:Diane ZakPublisher:Cengage Learning
- EBK JAVA PROGRAMMINGComputer ScienceISBN:9781337671385Author:FARRELLPublisher:CENGAGE LEARNING - CONSIGNMENTEBK JAVA PROGRAMMINGComputer ScienceISBN:9781305480537Author:FARRELLPublisher:CENGAGE LEARNING - CONSIGNMENTNp Ms Office 365/Excel 2016 I NtermedComputer ScienceISBN:9781337508841Author:CareyPublisher:Cengage



