Doing this project, students will have the chances to practice with the following concepts; therefore, you should review them when you are working on the project:
Repetition structures: using for, while, or do..while loop
Selection structure: using if, if else, or switch statement
Read data from keyboard
Read data from the file
Write data to the file
Using DecimalFormat to format the decimal numbers
Using user-defined functions
Review how to write the code of data type: data members, constructor, mutator methods, accessor methods and toString method
How to declare an object of a class in main and how to access member of class by using the object
how to declare an array and how to initial values of the array elements and how to access each element of an array
REQUIREMENT
Write the pseudo-code and provide the application named GradeApplication_yourLastName. The application allows users to process two tasks as below and only terminate when users select to exit.
GRADE ONE STUDENT: read information from the file studentInfo_yourLastName.txt, calculate the grade of one student then write the result to the file gradeReport_yourLastName.txt.
PRINT THE GRADE REPORT: read information from file gradeReport_yourLastName.txt and display on the screen the grades of all students
Each student has the following information that is provided in the file studentInfo_yourLastname.txt on one line in the following format:
StudentID - FirstName LastName – list of scores of quizzes – list of scores of homework – list of scores of labs – list of scores of exams – score of project – score of discussion
Item Data type Number of assignments Max score
Student id String
Full name String
Quiz double 15 6
Homework double 10 10
Lab double 7 30
Exam double 3 100
Project double 1 80
Discussion int 1 20
Total 800
The formula to calculate the percentage and determine the letter grade as below:
Sum of quizzes = quiz1 + quiz2 + quiz3 + ….+ quiz15
Sum of homework = homework1 + homework2 + …. + homework10
Sum of labs = lab1 + lab2 + lab3 + … + lab7
Sum of exams = exam1 + exam2 + exam3
Total = sum of quizzes + sum of homework + sum of labs + sum of exams + project + discussion
Percentage = 100 * total /max score
The letter grade is determined as follows:
A Percentage >= 90%
B Percentage >= 80%
C Percentage >= 70%
D Percentage >= 60%
F Percentage < 60%
The grade of one student after calculation in the task1 is displayed on screen in the following format:
Percentage Grade
>90% A
>80% B
>70% C
>60% D
<=60% F
Display the result on the screen as the following format
Student Name: Bill Washington
Student ID: 0097765
Total scores 528.50
Max scores: 680
Percentage: 77.65
Grade: C
Also, write the result to the file name gradeReport.txt in the following format:
Bill Washington – 0097765 – 90.5% - A
INSTRUCTION HOW TO DO THE PROJECT:
The following is the list information that may help on this project
Draw UML and Define class Student that maintains: name, student id, list of quizzes’ scores, list of homework’s scores, list of labs’ scores, list of exams’ scores, project’s score and discussion’s score. The class student should have constructor, mutator methods, accessor methods, method toString, method to calculate the total of scores, percentage and determine letter grade, etc. (READ the instruction from Learning From Question on eCampus)
Write the pseudo-code of main() in Microsoft word document (READ: “pseudo-code” from Learning From Question on eCampus)
You should apply user-defined functions and write the comments in the project that keeps your main() short and easy to understand.
Read input from the file studentInfo_yourLastname.txt review open file to read, how to read one line per time until end of file and close file (READ: “Open file to read by using Scanner”) at Learning From Question on eCampus)
Write the grade to the file gradeReport_yourLastName.txt review open file to write or to append (READ: “Open file to write or to append” at Learning From Questions on eCampus)
How to handle the loop to redisplay the main menu after finishing one task such that users can continue using the program until they want to exit (read “Re-display the menu by using do..while loop (READ: “Redisplay the menu by using do..while loop at Learning From Question on eCampus)
Syntax of if, if..else, if..else..if, switch, for loop, do..while loop, while loop (read from Learning From Questions on eCampus
Display the decimal number with one decimal digit: review Using manipulators: fixed, showpoint, or precision, etc. (READ: “how to set number of digits of decimal numbers” at Learning From Questions on eCampus)
Define an int array, access each element of array (if you need the array READ “define and access an array” from Learning From Question on eCampus)
How to split off tokens from a String by a delimiter (READ: “SPIT OFF TOKENS FROM A String BY USING STRINGTOKENIZER” from Learning From Questions on eCampus”)
Convert a String to int or to double (READ: “Convert a String to int or double” from Learning From Questions on eCampus)
Relationship between data type class and controlling class (READ: “Relationship between data type class and controlling class” from Learning From Questions on eCampus
For other questions, you can post question to discussion forum to ask for help from your classmates or send questions to me or stop by my office hours.
It is not our intention to break the school's academic policy. Posted solutions are meant to be used as a reference
and should not be submitted as is. We are not held liable for any misuse of the solutions.
Please see the frequently asked questions page
for further questions and inquiries.
Kindly complete the form.
Please provide a valid email address and we will get back to you within 24 hours.
Payment is through PayPal, Buy me a Coffee
or Cryptocurrency.
We are a nonprofit organization however we need funds to keep this organization operating
and to be able to complete our research and development projects.