Professional Documents
Culture Documents
GROUP ASSIGNMENT
TITLE:
PREPARED BY:
PREPARED FOR:
1
1.0 INTRODUCTION
Calculating a student’s Grade Point Average (GPA), Cumulative Grade Point Average
(CGPA), and overall percentage is a fundamental aspect of assessing academic performance.
How ever this process can sometimes be challenging and sometimes led to errors. In this
introduction, we have explored some issues that faced by students and create a solution to
solve the problem.
Usually, calculating GPA, CGPA and percentage was a manual and time consuming.
Sometimes it can be confusing and errors will occur especially with lots number of courses.
Thus, the development of the solution that calculate GPA, CGPA and percentage is crucial.
By using our solution, students can save time and reduce errors that may happen from manual
calculations.
More over in today’s digital age, it’s important for solutions to be easy to use and
accessible, so that students can quickly access to their latest academic information. Creating
a solution that works well can improve how GPA, CGPA and percentage calculation are done.
The process will be simpler and give students instant access to the right information.
2
2.0 OBJECTIVE OF THE PROJECT
iii. Calculate CGPA (Cumulative Grade Point Average) based on their cumulative
academic grade point and cumulative credit hours.
𝐶𝐶𝐶𝐶𝐶𝐶𝐶𝐶𝐶𝐶𝐶𝐶𝐶𝐶𝐶𝐶𝐶𝐶𝐶𝐶 𝑡𝑡𝑡𝑡𝑡𝑡𝑡𝑡𝑡𝑡 𝑎𝑎𝑎𝑎𝑎𝑎𝑎𝑎𝑎𝑎𝑎𝑎𝑎𝑎𝑎𝑎 𝑔𝑔𝑔𝑔𝑔𝑔𝑔𝑔𝑔𝑔 𝑝𝑝𝑝𝑝𝑝𝑝𝑝𝑝𝑝𝑝
𝐶𝐶𝐶𝐶𝐶𝐶𝐶𝐶𝐶𝐶𝐶𝐶𝐶𝐶𝐶𝐶𝐶𝐶𝐶𝐶 𝐺𝐺𝐺𝐺𝐺𝐺𝐺𝐺𝐺𝐺 𝑃𝑃𝑃𝑃𝑃𝑃𝑃𝑃𝑃𝑃 𝐴𝐴𝐴𝐴𝐴𝐴𝐴𝐴𝐴𝐴𝐴𝐴𝐴𝐴 =
𝐶𝐶𝐶𝐶𝐶𝐶𝐶𝐶𝐶𝐶𝐶𝐶𝐶𝐶𝐶𝐶𝐶𝐶𝐶𝐶 𝑡𝑡𝑡𝑡𝑡𝑡𝑡𝑡𝑡𝑡 𝑐𝑐𝑐𝑐𝑐𝑐𝑐𝑐𝑐𝑐𝑐𝑐 ℎ𝑜𝑜𝑜𝑜𝑜𝑜
2) Provide an efficient and accurate method for calculating students’ academic results,
by allowing for user-friendly evaluation and comparison. This project will help students
calculate their GPA, and CGPA without any mistakes and display the right output from the user
prompt.
3) Prepare students with the right tools to accurately calculates their GPA, and CGPA as
well as provide them with a visual representation of their grades through a grade table, this
will make a better understanding of their academic progress and performance, enabling
students to make decisions and take steps toward their educational and career goals clear
and better.
3
3.0 PROBLEM ANALYSIS
Problem analysis is called the definition phase. The problem is defined to obtain a clear
understanding of the problem requirement. Here is the process to solve this problem in the
table below:
Formula CGPA:
• total_grade_point +=
grade_point
• total_credit += credit
• cgpa = total_grade_point /
total_credit
Step/Solution:
1. Get input (From keyboard)
2. Set grade (In CPU and Memory)
3. Calculate total_grade_point (In CPU
and Memory)
4. Calculate total_credit (In CPU and
Memory)
5. Calculate gpa and cgpa (In CPU
and Memory)
6. Display output (To monitor/screen
console)
Table 3.1 Input Process Output Table
4
4.0 SOLUTION
The solution for this problem is developed using two methods, which is pseudocode
and flowchart.
4.1 Pseudocode
Pseudocode is a method of writing down the steps of a solution using plain English or
a combination of English and programming language concepts. It helps you plan and design
solutions without worrying about programming language specific syntax rules.
BEGIN
DECLARE service, continue;
LOOP START
DISPLAY "Choose Service: ";
DISPLAY "[1] Display Grade Table";
DISPLAY "[2] Calculate GPA";
DISPLAY "[3] Calculate CGPA";
READ service;
IF service == 1
CALL FUNCTION Display_grade_table;
IF service == 2
CALL FUNCTION Calculate_GPA
IF service == 3
CALL FUNCTION Calculate_CGPA
DISPLAY "Do you want to do another service? (Y/N)"
IF continue == 'Y' || continue == 'y'
DO LOOP
ELSE
LOOP END
END
Figure 4.1.1 Main
Based on Figure 4.1.1 Main, the solution starts by asking the user to choose a service
that they wanted. If the user inputs number greater than 0, the solution will proceed with
displaying grade table, calculation of GPA, CGPA and then print out all the desired output. It
depends on which service the user pick. If the user inputs a number less than 0 or a number
more than 3, the solution will instead print out a message saying “Invalid prompt”. After that, it
will display “Do you want to do another service? (Y/N). And the solution will continue the loop
until the user prompt letter other than y or Y.
BEGIN
FUNCTION Display_grade_table
INPUT Display Grade table
FUNCTION END
END
Figure 4.1.2 Display Grade Table Function
Based on Figure 4.1.2 Display Grade Table Function, if the user prompt in number 1,
a grade table will be displays. User-friendly interface will display a comprehensive grade table.
This table will enable students to easily interpret and understand the grading scale.
5
BEGIN
FUNCTION Calculate_GPA
DECLARE grade, another_subject, grade_point, total_grade_point, gpa,
credit, total_credit;
LOOP START
DISPLAY "Please enter your grade"
READ grade;
IF grade == "A+" || grade "A"
grade_point = 4.00
IF ELSE grade == "A-"
grade_point = 3.67
IF ELSE grade == "B+"
grade_point = 3.33
IF ELSE grade == "B"
grade_point = 3.00
IF ELSE grade == "B-"
grade_point = 2.67
IF ELSE grade == "C+"
grade_point = 2.33
IF ELSE grade == "C"
grade_point = 2.00
IF ELSE grade == "C-"
grade_point = 1.67
IF ELSE grade == "D+"
grade_point = 1.33
IF ELSE grade == "D"
grade_point = 1.00
IF ELSE grade == "E"
grade_point = 0.67
IF ELSE grade == "F"
grade_point = 0.00
ELSE
DISPLAY "Invalid Input"
DO LOOP
DISPLAY "Please enter credit hour for this subject: "
READ credit;
CALCULATE
total_grade_point += grader_point*credit_hour
total_credit +=credit
DISPLAY "Do you want to input another subject? (Y/N)";
READ another_subject;
IF another_subject == 'Y' || another_subject == 'y'
DO LOOP
ELSE
LOOP END
CALCULATE gpa = total_grade_point / total_credit
DISPLAY "Your Total Grade point for this semester is ",
total_grade_point;
DISPLAY "Your total credit hour for this semester is" ,
total_credit;
DISPLAY "Your GPA for this semester is: ", gpa;
FUNCTION END
END
Figure 4.1.3 Calculate GPA
Based on Figure 4.1.3 Calculate GPA, if the user prompt number 2, the solution will
ask the user to enter their grade and credit hours. Then, a calculation algorithm will run and
accurately calculates a student’s GPA based on the grades and credit hours obtained in
6
individual courses. It will continue until the user prompt letter other than y or Y. And it will print
out the user’s total grades, credits and GPA.
BEGIN
FUNCTION Calculate_CGPA
DECLARE semester, count = 1, grade_point, total_grade_point,
credit, total_credit, cgpa
DISPLAY "Please enter how many semester you have ".
READ semester;
LOOP START
DISPLAY "Please enter your Total Grade Point for Semester" ,
count,
READ grade_point
DISPLAY "Please enter your Total Credit Hour for Semester ",
count,
READ credit
CALCULATE
total_grade_point += grade_point
total_credit += credit
count++
IF count <= semester
DO LOOP
ELSE
LOOP END
CALCULATE
cgpa = total_grade_point/total_credit
DISPLAY "Your Total Grade point for all your semester is ",
total_grade_point
DISPLAY "Your total credit hour for all your semester is ",
total_credit
DISPLAY "Your CGPA is: ", cgpa;
FUNCTION END
END
Figure 4.1.4 Calculate CGPA
Based on Figure 4.1.4 Calculate CGPA, If the user prompt in number 3. Then, the
CGPA (Cumulative Grade Point Average) calculation, which represents the average GPA
achieved over multiple semesters or academic sessions. The solution will accumulate the
individual GPAs from each semester and calculate the overall CGPA. After that, it will display
the user’s total grade point, credit hours and CGPA.
7
4.2 Flowchart
A flowchart is a diagram that uses shapes and arrows to represent the flow of a
solution. It provides a visual representation of the steps in the process, making it easier to
understand and follow
In Figure 4.2.1 Main, the solution starts by asking the user to choose a service that
they wanted. If the user inputs number greater than 0, the solution will proceed with displaying
grade table, calculation of GPA, CGPA and then print out all the desired output. It depends on
which service the user pick. If the user inputs a number less than 0 or a number more than 3,
the solution will instead print out a message saying “Invalid prompt”. After that, it will display
“Do you want to do another service? (Y/N). And the solution will continue the loop until the
user prompt letter other than y or Y.
8
Figure 4.2.2 Grade table
In Figure 4.2.2 Grade table, if the user prompt in number 1, a grade table will be
displays. User-friendly interface will display a comprehensive grade table. This table will
enable students to easily interpret and understand the grading scale.
In Figure 4.2.3 GPA calculation, if the user prompt number 2, the solution will ask the
user to enter their grade and credit hours. Then, a calculation algorithm will run and accurately
calculates a student’s GPA based on the grades and credit hours obtained in individual
9
courses. It will continue until the user prompt letter other than y or Y. And it will print out the
user’s total grades, credits and GPA.
In Figure 4.2.4 CGPA calculation, If the user prompt in number 3. Then, the CGPA
(Cumulative Grade Point Average) calculation, which represents the average GPA achieved
over multiple semesters or academic sessions. The solution will accumulate the individual
GPAs from each semester and calculate the overall CGPA. After that, it will display the user’s
total grade point, credit hours and CGPA.
10
5.0 SAMPLE EXPECTED OUTPUT
11
6.0 DISCUSSION
Topics to be discuss about this solution is finding from the solution, limitation of the
solution, and improvement to suggest.
The solution that had been developed is sufficient to solve the problem which is
calculating GPA (Grade Point Average) and CGPA (Cumulative Grade Point Average) by
calculating the GPA (Grade Point Average) and CGPA (Cumulative Grade Point Average).
The solution has several flaws that it is unable to accurately calculate GPA and CGPA
if the user wants to input grades using marks. The solution only uses a limited set of grades
(A+, A, A-, B+, B, B-, C+, C, C-, D+, D, E, F) and assigns fixed grade points to each grade.
3) Improvement to suggest
ii) Allow users to define their own grade mapping, where they can assign grade points
based on the marks or grading scale used in their educational institution.
12
7.0 CONCLUSION
The suggested improvements to address the flaws in the solution and enable GPA and
CGPA calculations based on user-provided marks are achievable in programming. These
improvements involve modifying the solution to incorporate input validation, custom grade
mapping, credit hour mapping, and revising the calculation logic for GPA, CGPA. These
improvements can be implemented using programming concepts such as conditionals, loops,
data structures, and function. By making these changes, the solution will be able to handle
user input, adjust different grading systems, and accurately calculate GPA and CGPA.
13
8.0 REFERENCES
14
APPENDIX
No
Attributes Sub-attribute Poor Fair Good Excellent Weight
Submission Marks
0 1 2 3 4
No Poor use of white White space makes Good use of white Excellent use of
Submission space (indentation, solution fairly easy to space. white space.
blank lines). read.
Sufficiently organized Creatively organized
Disorganized and Partially organized work. work.
Pseudocode Readability 3
messy. work.
Good use of variables Excellent use of
Poor use of variables Fairly use of variables and control structures. variables control
and control and control structures.
structures. structures.
Formatting No formatting Poor report formatting Fairly good report Good report formatting. Excellent report
with unorganized formatting. formatting. Follow
content. the documentation
References are included. format with an
Major grammatical appropriate 1
error. References aprroiate
arrangement and
to the requirement
Minor grammatical error. fulfilled
No references
requirements.
Documentatio included.
n/Project
Report Algorithm No Poor explanation of Fairly good Good explanation of Excellent
(Pseudocode & Submission algorithm which does explanation of algorithm based on explanation of
Flowchart) not reflex the problem algorithm based on problem statement and algorithm based on 1
statement and problem statement solving. problem statement
solving. and solving. and solving.
Discussion & No Unrelated discussion Fairly good Good and logical Well thought-out and
Conclusion Submission and conclusion discussion and discussion and logical discussion 1
conclusion conclusion and conclusion.
TOTAL
52
16
SCORING RUBRICS (PRESENTATION)
0 1 2 3 4
17
Information and Presents findings with Presents findings in
Presents findings in an
Organization graphics are some degree of an organized and 2
No Presentation organized manner
disorganized organization conclusive manner
Has a
Ethics & Has a less Has a well-
disharmonious
Professionalism harmonious Has a satisfactory Has a good acknowledged
relationship with co-
relationship with co- relationship with co- relationship with co- relationship with co-
workers and within
workers and within workers and within workers and within workers and within
Work Relation institution, work, 2
institution, work, institution, work, groups institution,work, groups institution, work,
groups and
groups and and community when at and community when groups and
community when at
community when at work at work community when at
work
work work
TOTAL
48
18