0% found this document useful (0 votes)
5 views

Python File

python code

Uploaded by

m.ahmaddogar72
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as TXT, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
5 views

Python File

python code

Uploaded by

m.ahmaddogar72
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as TXT, PDF, TXT or read online on Scribd
You are on page 1/ 2

class Course:

def __init__(self, course_name, credit_hours, grade):


self.course_name = course_name
self.credit_hours = credit_hours
self.grade = grade

class Semester:
def __init__(self, semester_number, courses):
self.semester_number = semester_number
self.courses = courses

def calculate_gpa(self):
total_grade_points = 0
total_credit_hours = 0

for course in self.courses:


total_grade_points += course.grade * course.credit_hours
total_credit_hours += course.credit_hours

return total_grade_points / total_credit_hours

class Student:
def __init__(self, name, semesters):
self.name = name
self.semesters = semesters

def calculate_cgpa(self):
total_gpa = 0
total_semesters = len(self.semesters)

for semester in self.semesters:


total_gpa += semester.calculate_gpa()

return total_gpa / total_semesters

def main():
students = []

number_of_students = int(input("Enter the number of students: "))

for i in range(number_of_students):
student_name = input(f"Enter the name of student {i + 1}: ")

number_of_semesters = int(input(f"Enter the number of semesters for


{student_name}: "))
semesters = []

for j in range(number_of_semesters):
semester_number = j + 1
number_of_courses = int(input(f"Enter the number of courses in semester
{semester_number}: "))
courses = []

for k in range(number_of_courses):
course_name = input(f"Enter the course name: ")
credit_hours = int(input(f"Enter credit hours for {course_name}:
"))
grade = float(input(f"Enter grade for {course_name}: "))
courses.append(Course(course_name, credit_hours, grade))

semesters.append(Semester(semester_number, courses))

students.append(Student(student_name, semesters))

for student in students:


print(f"CGPA of {student.name} is: {student.calculate_cgpa():.2f}")

if __name__ == "__main__":
main()

You might also like