Spaces:
Runtime error
Runtime error
| import gradio as gr | |
| def calculate_cgpa(grades, credit_hours): | |
| total_points = 0 | |
| total_credits = 0 | |
| for grade, credits in zip(grades, credit_hours): | |
| # Convert grade to grade point based on the provided scale | |
| if grade == 'O': | |
| grade_point = 10 | |
| elif grade == 'A+': | |
| grade_point = 9 | |
| elif grade == 'A': | |
| grade_point = 8 | |
| elif grade == 'B+': | |
| grade_point = 7 | |
| elif grade == 'B': | |
| grade_point = 6 | |
| elif grade == 'C': | |
| grade_point = 5 | |
| elif grade in ['F', 'W', 'I', 'Ab']: | |
| grade_point = 0 | |
| else: | |
| print(f"Unknown grade '{grade}' encountered. Skipping...") | |
| continue | |
| # Accumulate total points and total credits | |
| total_points += grade_point * credits | |
| total_credits += credits | |
| # Calculate CGPA | |
| if total_credits == 0: | |
| return 0.0 | |
| cgpa = total_points / total_credits | |
| return round(cgpa, 2) | |
| def cgpa_calculator_interface(course_data): | |
| try: | |
| grades = [] | |
| credit_hours = [] | |
| for course in course_data: | |
| grade = course['grade'] | |
| credits = int(course['credits']) | |
| grades.append(grade) | |
| credit_hours.append(credits) | |
| cgpa = calculate_cgpa(grades, credit_hours) | |
| return f"Your CGPA is: {cgpa}" | |
| except ValueError: | |
| return "Invalid input. Please ensure all credit hours are integers." | |
| iface = gr.Interface( | |
| cgpa_calculator_interface, | |
| inputs = ["textbox", "textbox"], | |
| gr.Label(label="Add Course"), | |
| #debug=True, | |
| #title="CGPA Calculator" | |
| outputs = "textbox" | |
| ) | |
| iface.launch() | |