Attendance Tracker with Eligibility Check
By
Joshua Braganza 2441220
Raj Dhariya 2441241
Sohag Dawn 2441251
Under the Guidance of
Gowri MS
Albin Biju
September - 2025
ACKNOWLEDGEMENTS
We would like to express our gratitude to Christ (Deemed to be University),
Bengaluru, for providing us the opportunity to undertake this project. We extend our
sincere thanks to our Head of Department for their guidance and support. We are also
thankful to our teachers Ms Gowri MS and Mr Albin Biju whose encouragement
helped us complete this work. Finally, we express our appreciation to our friends and
family for their constant support.
ABSTARCT
Attendance is an essential aspect of academic institutions, as it is often linked to
student discipline, academic performance, and eligibility to appear for examinations.
Traditional methods of recording attendance manually can be time-consuming, prone
to human error, and difficult to manage for larger groups. To overcome these
challenges, we developed a Python-based Attendance Tracker with Eligibility Check.
The project records the attendance details of students, calculates their attendance
percentage, and determines their eligibility based on a predefined threshold (for
example, 75% attendance). The program uses fundamental Python concepts such as
loops, conditionals, lists, and dictionaries to manage input and computation
effectively. Error handling mechanisms are incorporated to ensure accuracy in data
entry and processing.
The outcomes of this project highlight the efficiency of using Python for simple
automation tasks in education. The tracker provides quick and accurate results,
reduces manual workload, and helps institutions maintain transparency in determining
eligibility. This work demonstrates Python’s capability to solve real-world problems in
a user-friendly manner while laying the groundwork for further improvements such as
automated report generation and database integration.
TABLE OF CONTENTS
Introduction
Objectives
Methodology
● Input Phase
● Processing Phase
● Output Phase
Code and Outputs
Conclusion
References
INTRODUCTION
Attendance is one of the most important aspects in educational institutions. It is not
only used to measure student participation in classes but also acts as a deciding factor
in student eligibility for exams and internal assessments. Most colleges, including
ours, require a minimum percentage of attendance (for example, 75%) in order to
allow students to appear for the semester examinations.
Traditionally, teachers mark attendance in registers or use spreadsheets. While this
method works, it is time-consuming and often prone to errors. It also becomes
difficult to calculate overall attendance and eligibility quickly, especially when the
class size is large.
This is where automation using Python can help. Python is a simple and flexible
programming language that allows us to build interactive and practical applications. In
this project, we created an Attendance Tracker with Eligibility Check. The tracker
takes student details and their attendance records, calculates their attendance
percentage, and finally checks if they are eligible or not according to the rule set.
This project helped us practice the Python concepts we studied in class, such as loops,
conditionals, lists, dictionaries, and error handling. At the same time, it also provided
us with a real-world application that can be useful in everyday college situations.
OBJECTIVES
The main objectives of our project are:
● To practice and apply the core concepts of Python programming.
● To record and manage student attendance in a systematic manner.
● To calculate the attendance percentage for each student automatically.
● To check eligibility based on a predefined attendance requirement (e.g., 75%).
● To provide an output that clearly shows which students are eligible and which
are not.
METHODOLOGY
Input Phase
● The program first asks for the total number of students and the number of
sessions conducted.
● The names of the students are entered and stored in a list.
● For each session, the attendance of the students is entered as present or absent.
● Attendance data is stored in a dictionary, where each student’s name is linked
to the number of classes attended.
Processing Phase
● For every student, the total number of sessions attended is calculated.
● The attendance percentage is then computed using the formula:
Attendance % = No of sessions attended/ Total sessions conducted x 100
● The program compares the attendance percentage of each student with the
eligibility rule.
● If the percentage is greater than or equal to the minimum requirement (for
example, 85%), the student is marked as Eligible. Otherwise, they are marked
as Not Eligible.
● Error handling is used to avoid invalid entries such as negative numbers or
values greater than the total sessions.
Output Phase
● The program prints a clear summary for each student.
● This includes: student name, number of classes attended, attendance
percentage, and eligibility status.
● At the end, the program gives an overall summary showing how many students
are eligible and how many are not.
CODE AND OUTPUTS
print("Attendance Tracker with Eligibility Check\n")
# Process each student
for name, record in [Link]():
percentage = (record["Attended"] / record["Total"]) * 100
# Check eligibility
if percentage >= 85:
status = "Eligible"
needed = 0
else:
status = "Not Eligible"
required_classes = int((0.85 * record["Total"]) - record["Attended"] + 1)
needed = required_classes if required_classes > 0 else 0
# Save results
record["Percentage"] = percentage
record["Status"] = status
record["Needed"] = needed
# Display Attendance Report
print("--- Attendance Report ---\n")
for name, record in [Link]():
print(f"{name}: {record['Attended']}/{record['Total']} classes | "
f"{record['Percentage']:.2f}% - {record['Status']}", end="")
if record["Needed"] > 0:
print(f" | Needs {record['Needed']} more classes to be eligible")
else:
print()
The Attendance Tracker successfully recorded the names of students and their
attendance across sessions. For each student, the program displayed the total classes
attended and calculated the attendance percentage.
Students who had an attendance percentage greater than or equal to 75% were shown
as Eligible, while those with lower attendance were marked as Not Eligible. The
program handled invalid inputs correctly and displayed error messages whenever
incorrect data was entered.
The output was clear, interactive, and matched the real-world rules followed by our
institution. Overall, the program was effective in tracking attendance and checking
eligibility automatically.
CONCLUSION
The Attendance Tracker with Eligibility Check demonstrates how Python can be used
to automate a simple but important academic task. By applying loops, conditionals,
and data structures, the program successfully records attendance, calculates
percentages, and decides eligibility.
The project reduced the possibility of manual errors and made the process of checking
eligibility faster and more reliable. It also provided us with hands-on practice in
applying the Python concepts learned in class.
REFERENCES
[1] Python Software Foundation, “Python Documentation,” [Online]. Available:
[Link]
[2] M. Lutz, Learning Python, 5th ed. O’Reilly Media, 2013.
[3] E. Matthes, Python Crash Course: A Hands-On, Project-Based Introduction to
Programming, 2nd ed. No Starch Press, 2019.
[4] TutorialsPoint, “Python – Overview,” [Online]. Available:
[Link]
[5] GeeksforGeeks, “Python Programming Language,” [Online]. Available:
[Link]
[6] Real Python, “Python Basics,” [Online]. Available:
[Link]
[7] J. Zelle, Python Programming: An Introduction to Computer Science, 3rd ed.
Franklin, Beedle & Associates, 2016.
[8] W3Schools, “Python Tutorial,” [Online]. Available:
[Link]