Skip to content

A Student Subjects Registration System and CGPA Calculator with facility of seeing registered Subjects and Detailed DMC View. Made on Java and Swing Library of Java for UI.

Notifications You must be signed in to change notification settings

AdnanMuhib/CGPA-Caclculator-UET

Repository files navigation

CGPA-Calculator-UET

A Student Subjects Registration System and CGPA Calculator with facility of seeing registered Subjects and
Detailed DMC View. Made on Java and Swing Library of Java for UI.

Documentation

To know about the functionality of each member function use Documentation.

Problem Statement (Assignment)

Write a Java program in which you are required to implement the following design:
alt text
Constraints for each attribute are given below.

  • StudentName //should be alphabetic, special characters and numbers are not allowed.
  • RegistrationNumber //Format should be like this: 2015-CS-888, any other format should be handled in setter function.
  • Degree //it should be MS, BS or BE.
  • CourseID // Format should be valid according to your course codes given in your LMS. For instance, software engineering lab has course ID of CS381L. Length of course code should be from 2 to 8 characters.
  • CourseTitle // should be alphabetic. Length of course code should be from 10 to 35 characters.
  • CreditHours // values from 1 to 3 are allowed.
  • Marks // values from 0 to 100 are allowed.
  • Semester // valid range is from 1 to 8.
  1. Your Program should define three constructors for class of CourseResult:
  • a constructor with no parameter
  • a constructor with parameters
  • copy constructor
  1. UetGradeBook will have only one constructor without parameter.
  2. Define getter setter for each data member in classes.
  3. Apart from getter, setter and constructor, define the following functions in respective classes according to class diagram:
    i. getGrade() – it should calculate grade based on marks using the following criteria:
  • a. IF marks are less than 40 – Grade is F
  • b. IF marks are between 40 and 50(exclusive) - Grade is D
  • c. IF marks are between 50 and 55(exclusive) - Grade is C
  • d. IF marks are between 55 and 60(exclusive) - Grade is C+
  • e. IF marks are between 60 and 65(exclusive) - Grade is B
  • f. IF marks are between 65 and 70(exclusive) - Grade is B+
  • g. IF marks are between 70 and 80(exclusive) - Grade is A
  • h. IF marks are above 80 - Grade is A
    ii. getGradePoints() – function should return grade points using the following criteria:
    alt text

iii. getSemesters() – it should return number of semesters based on course list.

iv. getSemesterGPA(semester: int) – calculate semester GPA according to following formula :
semesterGPA = Sumof(SemesterCourseGradePoints) / SemesterCreditHours

v. getSemesterCGPA(semester: int): calculate CGPA using the following formula :
CGPA = Sumof(CourseGradePoints) / TotalCreditHours
vi. getTotalCreditHours() – it should return number of credit hours based on course list.
vii. getSemesterCreditHours(semester: int) – it should return number of credit hours for a given semester based on course list.
viii. getSession() – extract session from RegistrationNumber.
ix. getDiscipline(): extract session from RegistrationNumber.
x. toString() – Purpose of this function is to write all attributes of a class in desired format and return as a string.
5. Further, you must make a new class named Driver in which you have to define main function. 6. Declare a new object of UetGradeBook in main function.

OUTPUT

alt text
alt text
alt text
alt text
alt text
alt text

About

A Student Subjects Registration System and CGPA Calculator with facility of seeing registered Subjects and Detailed DMC View. Made on Java and Swing Library of Java for UI.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages