Gpa-calculator / app.py
abdullahshoaib5616's picture
Create app.py
3468491 verified
raw
history blame contribute delete
944 Bytes
import streamlit as st
def calculate_gpa(grades, credits):
total_points = sum(g * c for g, c in zip(grades, credits))
total_credits = sum(credits)
return round(total_points / total_credits, 2) if total_credits else 0
# Streamlit UI
st.title("GPA Calculator")
num_courses = st.number_input("Enter number of courses:", min_value=1, step=1)
grades = []
credits = []
for i in range(num_courses):
col1, col2 = st.columns(2)
with col1:
grade = st.selectbox(f"Grade for Course {i+1}", options=["A", "B", "C", "D", "F"], index=0, key=f"grade{i}")
with col2:
credit = st.number_input(f"Credit Hours for Course {i+1}", min_value=1, step=1, key=f"credit{i}")
grade_points = {"A": 4.0, "B": 3.0, "C": 2.0, "D": 1.0, "F": 0.0}
grades.append(grade_points[grade])
credits.append(credit)
if st.button("Calculate GPA"):
gpa = calculate_gpa(grades, credits)
st.success(f"Your GPA is: {gpa}")