💻Computer Science Project Title: Creating a Simple Student
Grading System Using Python
Stage 1: Problem Identification
📌 Problem Statement:
Many schools still use paper-based methods to calculate student grades, which is time-consuming and
error-prone. This project aims to create a simple, accurate, and efficient grading system using Python
that takes student marks and automatically computes grades.
🎯 Design Specifications:
The program must:
Accept input for student names and subject marks
Calculate total and average
Assign a grade based on the average
Display results clearly
Language: Python
Platform: Terminal-based, simple UI
Stage 2: Investigation of Related Ideas
✅ Idea 1: Manual Excel Spreadsheet
Advantages:
Easy to use for teachers
Built-in formulas
Visual layout
Disadvantages:
Not secure
Errors in manual entry
Lacks automation
✅ Idea 2: Web-based Grading System
Advantages:
Accessible from anywhere
Can store data in a database
Interactive and scalable
Disadvantages:
Requires internet & hosting
More complex to build
Requires web knowledge (HTML, JS, PHP, etc.)
✅ Idea 3: Python Console App
Advantages:
Fast development
Easy to run on any computer
Good for learning logic and programming
Disadvantages:
No GUI unless added
Limited to text input/output
Not ideal for large data sets
Stage 3: Generation of Ideas
💡 Solution 1: Use Python Console App
Advantages:
Simple and quick to develop
Easy to test and debug
Works offline
Disadvantages:
No graphical interface
Limited user interaction
Needs Python installed
💡 Solution 2: Build a Web App
Advantages:
User-friendly interface
Scalable and accessible
Can connect to database
Disadvantages:
Requires HTML/CSS/JS/PHP knowledge
Internet required
More time to develop
💡 Solution 3: Use Google Sheets with Scripts
Advantages:
No installation needed
Real-time collaboration
Automation with Google Apps Script
Disadvantages:
Depends on Google services
Scripting knowledge needed
Limited custom logic
Stage 4: Development of Selected Idea
✅ Chosen Idea: Python Console Grading System
Why Chosen:
Suitable for beginners
Runs offline
Easy to share and demonstrate
🧮 Sample Code:
Def calculate_grade(avg):
If avg >= 80:
Return “A”
Elif avg >= 70:
Return “B”
Elif avg >= 60:
Return “C”
Elif avg >= 50:
Return “D”
Else:
Return “F”
Students = []
For I in range(3):
Name = input(“Enter student name: “)
Marks = []
For subject in [‘Math’, ‘English’, ‘Science’]:
Score = float(input(f”Enter marks for {subject}: “))
Marks.append(score)
Total = sum(marks)
Avg = total / len(marks)
Grade = calculate_grade(avg)
Students.append((name, total, avg, grade))
Print(“\n--- Student Results ---“)
For student in students:
Print(f”Name: {student[0]}, Total: {student[1]}, Average: {student[2]:.2f}, Grade: {student[3]}”)
Stage 5: Presentation of Information
🖥️How It Will Be Presented:
Poster showing input/output and code structure
Live demo using terminal
Slide show showing:
Problem → Solution
Code breakdown
Screenshot of results
Flowchart explaining how the program works
Stage 6: Evaluation and Recommendations
✅ Evaluation:
The grading system works correctly for basic student input
It assigns grades accurately based on average
Useful in small class settings
❌ Challenges Faced:
Ensuring input validation
Formatting output clearly
Writing a modular program
💬 Recommendations:
Add GUI using Tkinter
Store data in a file (CSV/JSON)
Allow subject customization
Add login/admin system for teachers