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

cs

The document outlines a Computer Science project titled 'Report Card Generator' developed by Siva Sankaran M for the AISSCE 2024. It includes sections on the project's overview, need for computerization, hardware and software requirements, advantages and limitations, source code, and future enhancements. The project aims to streamline the process of generating report cards and managing student data through a computerized system.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
9 views

cs

The document outlines a Computer Science project titled 'Report Card Generator' developed by Siva Sankaran M for the AISSCE 2024. It includes sections on the project's overview, need for computerization, hardware and software requirements, advantages and limitations, source code, and future enhancements. The project aims to streamline the process of generating report cards and managing student data through a computerized system.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 29

VELAMMAL VIDYALAYA VIRAGANOOR

MADURAI

AISSCE – 2024

083 - COMPUTER SCIENCE PROJECT

PROJECT TITLE: REPORT CARD GENERATOR

NAME : SIVA SANKARAN M

CLASS :X11-A1

REG NO :

DEPARTMENT OF COMPUTER SCIENCE

2023-2024
VELAMMAL VIDYALAYA VIRAGANOOR
MADURAI

COMPUTER SCIENCE PROJECT

CERTIFICATE

This is to certify that this is the bonafide record of project

work done by Master SIVA SANKARAN M of Grade XII

during the academic year 2023-2024.

Submitted for AISSCE -2024 Computer Science Practical

Examination held on _____________ at Velammal

Vidyalaya, Viraganoor, Madurai.

Date: __________

PRINCIPAL INTERNAL EXAMINER EXTERNAL


EXAMINER
ACKNOWLEDGEMENT
The successful completion of any task would be incomplete without
mentioning the names of those persons who helped to make it possible. I
take this opportunity to express my gratitude in few words and respect to
all those who helped me in the completion of this project.

I am most indebted to my beloved Chairman Shri.M.V.Muthuramalingam


and Director Shri M.V.M.Sasikumar for their encouragement, suggestion,
and readily helpful service in performing the experiment and project.

I also register my sense of gratitude to our principal, Mrs.Rosila, for her


immense encouragement that has made this project successful.
I would also like to thank my friends and family for encouraging me during
the course of this project.

It is my humble pleasure to acknowledge my deep senses of gratitude to my


Computer Science teachers, Mrs.R.Lavanya, Mrs.S.Ramya for their
valuable support, constant help and guidance at each and every stage,
without which this project would not have come forth.

Last, but not the least, I would like to thank CBSE for giving us the
opportunity to undertake this project.

INDEX
S.N CONTENT PG.N
O O
1. BRIEF OVERVIEW 1
2. NEED FOR COMPUTERIZATION 2
3. HARDWARE AND SOFTWARE 3
4. ADVANTAGES OF PROJECT 4
5. LIMITATIONS OF PROJECT 5
6. SOURCE CODE 6
7. OUTPUT 13
8 FUTURE ENHANCEMENT 25
9. BIBLIOGRAPHY 26

Brief overview
 The “Report Card Generator” was developed to
overcome the problems that prevail manual system.
 The software is supported to eliminate and in some
cases ,reduce the difficulties encountered by this
legacy system.
 Furthermore , this system is designed for the
specific educational needs to be implemented.

Needs for computerization


 Computation is used to calculate the academic
performance of students, including the total marks
obtained and the average marks in various subjects.
These calculations are fundamental for generating
report cards and assessing student progress.

 Computation allows for data analysis, helping


educators and administrators identify trends and
patterns in student performance. For example, it
can be used to identify students who need
additional support or to assess the effectiveness of
teaching methods.

 Computation plays a pivotal role in generating


report cards for students. It ensures that the
calculations are accurate, consistent, and follow
predefined grading criteria.

Hardware and software


requirements
HARDWARE REQUIREMENTS:
A computer with operating system with windows7,
RAM-1GB and above.1GB -free disk space.

SOFTWARE REQUIREMENTS:
 Windows OS
 Python 3.11
 My SQL 5.5
 MS Word
Advantages of project

 Processing speed and result.


 Cost effective.
 Easy to handle.
Limitations of project

 Setting up the system, including configuring the


MySQL database and tables, may be complex and
require technical expertise. It can be challenging
for schools with limited IT resources.

 The system requires ongoing maintenance and


updates to ensure its smooth operation. This
includes software updates, database maintenance,
and bug fixes.

 Customizing the system to meet the specific needs


of the school can be costly and time-consuming.
Customization efforts should be carefully planned
and budgeted.

SOURCE CodE
#***VELAMMAL VIDYALAYA VIRAGANOOR ***

import mysql.connector

#MODULE TO CHECK MYSQL CONNECTIVITY


def MYSQLconnectionCheck ():
global myConnection
global username
global password
username=input("\n ENTER MYSQL SERVERS USERNAME:")
password=input("\n ENTER MYSQL SERVERS PASSWORD:")

myConnection=mysql.connector.connect(host="localhost",user=username,pass
wd=password,database='SCHOOL',auth_plugin='mysql_native_passwd' )
if myConnection:
print("\n CONGRATULATIONS ! YOUR MYSQL CONNECTION HAS
BEEN ESTABLISHED !")
cursor=myConnection.cursor()
cursor.execute("CREATE DATABASE SCHOOL")
cursor.execute("COMMIT")
cursor.close()
return myConnection
else:
print("\nERROR ESTABLISHING MYSQL CONNECTION
CHECK USERNAME AND PASSWORD !")

#MODULE TO ESTABLISHED MYSQL CONNECTION


def MYSQLconnection():
global username
global password
global myConnection

myConnection=mysql.connector.connect(host="localhost",user=username,pass
wd=password,database='SCHOOL',auth_plugin='mysql_native_passwd' )
if myConnection:
return myConnection
else:
print("\nERROR ESTABLISHING MYSQL CONNECTION !")
myConnection.close()
#MODULE FOR NEW ADMISSION
def newstudent():
if myConnection:
cursor=myConnection.cursor()
createTable ="CREATE TABLE STUDENT(SNAME
VARCHAR(30),FNAME VARCHAR(30),MNAME VARCHAR(30),PHONE
VARCHAR(12), ADDRESS VARCHAR(100),SCLASS
VARCHAR(5),SSECTION VARCHAR(5),SROLL_NO
VARCHAR(5),SADMISSION_NO VARCHAR(10)PRIMARY KEY)"
cursor.execute(createTable)
sname=input("\n ENTER STUDENT'S NAME : ")
fname=input(" ENTER FATHER'S NAME : ")
mname=input(" ENTER MOTHER'S NAME : ")
phone=input(" ENTER CONTACT NO. : ")
address=input(" ENTER ADDRESS : ")
sclass =input(" ENTER CLASS : ")
ssection=input(" ENTER SECTION : ")
sroll_no=input(" ENTER ROLL_NO : ")
sadmission_no=input(" ENTER ADMISSION_NO : ")
sql="INSERT into
student(SNAME,FNAME,MNAME,PHONE,ADDRESS,SCLASS,SSECTION,
SROLL_ NO,SADMISSION_NO)
VALUES('{0}','{1}','{2}','{3}','{4}','{5}','{6}','{7}','{8}')".format(sname,fname,
mname,phone,address,sclass,ssection,sroll_no,sadmission_no)
cursor.execute(sql)
myConnection.commit()
cursor.close()
print("\nNew Student Enrolled Successfully else:")
print("\nERROR ESTABLISHING MYSQL CONNECTION !")

#MODULE TO DISPLAY STUDENT'S DATA


def displayStudent():
cursor=myConnection.cursor()
if myConnection:
cursor.execute("SELECT * FROM STUDENT")
data=cursor.fetchall()
print(data)
cursor.close()
else:
print("\nSomthing Went Wrong ,Please Try Again !")

#MODULE TO UPDATE STUDENT'S RECORD


def updateStudent():
cursor=myConnection.cursor()
if myConnection:
admission_no=input("ENTER ADMISSION NO")
sql="SELECT * FROM STUDENT WHERE SADMISSION_NO= %s"
cursor.execute(sql,(admission_no,))
data=cursor.fetchall()
if data:
print("PRESS 1 FOR NAME")
print("PRESS 2 FOR CLASS")
print("PRESS 3 FOR ROLL NO")
choice=int(input("Enter Your Choice"))
if choice==1:
name=input("ENTER NAME OF THE STUDENT :")
sql="UPDATE STUDENT SET SNAME= %s WHERE
SADMISSION_NO =%s"
cursor.execute(sql,(name,admission_no))
cursor.execute("COMMIT")
print("NAME UPDATED")
elif choice == 2:
std=input("ENTER CLASS OF THE STUDENT :")
sql="UPDATE STUDENT SET SCLASS= %s WHERE
SADMISSION_NO=%s"
cursor.execute(sql,(std,admission_no))
cursor.execute("COMMIT")
print("CLASS UPDATED")
elif choice==3:
roll_no=int(input("ENTER ROLL NO OF THE STUDENT :"))
sql="UPDATE STUDENT SET SROLL_NO=%s WHERE
SADMISSION_NO = %s"
cursor.execute(sql,(roll_no,admission_no))
cursor.execute("COMMIT")
print("ROLL NO UPDATED")
else:
print("Record Not Found Try Again !")
cursor.close()
else:
print("\nSomthing Went Wrong ,Please Try Again !")

#MODULE TO ENTER MARKS OF THE STUDENT


def marksStudent ():
if myConnection:
cursor=myConnection.cursor()
createTable ="CREATE TABLE MARKS(SADMISSION_NO
VARCHAR(10) PRIMARY KEY,TAMIL INT,ENGLISH INT ,MATH
INT ,SCIENCE INT,SOCIAL INT,COMPUTER INT,TOTAL
INT ,AVERAGEDECIMAL)"
cursor.execute(createTable)
admission_no=input("ENTER ADMISSION NO OF THE STUDENT :")
tamil=int(input("\n ENTER MARKS OF TAMIL : "))
english=int(input("\n ENTER MARKS OF ENGLISH : "))
math=int(input("\n ENTER MARKS OF MATH : "))
science=int(input("\n ENTER MARKS OF SCIENCE : "))
social=int(input("\n ENTER MARKS OF SOCIAL : "))
computer =int(input("\n ENTER MARKS OF COMPUTER : "))
total = tamil + english + math + science + social + computer
average = total/6
sql="INSERT INTO
MARKS(SADMISSION_NO,TAMIL,ENGLISH,MATH,SCIENCE,SOCIAL,
COMPUTER, TOTAL,AVERAGE) VALUES(%s,%s,%s,%s,%s,%s,%s,%s,
%s)"
values=(admission_no,tamil,english,math,science,social,computer , total ,
average)
cursor.execute(sql,values)
cursor.execute("COMMIT")
cursor.close()
print("\nMarks of the Student Entered Successfully !")
else:
print("\nERROR ESTABLISHING MYSQL CONNECTION !")

#MODULE TO GENERATE REPORT CARD OF ALL STUDENTS


def reportCardAllStudent () :
cursor=myConnection.cursor()
if myConnection:
cursor.execute("SELECT * FROM MARKS")
data=cursor.fetchall()
print(data)
cursor.close()
else:
print("\nSomthing Went Wrong ,Please Try Again !")

#MODULE TO GENERATE REPORT CARD OF ONE STUDENTS


def reportCardOneStudent():
cursor=myConnection.cursor()
if myConnection:
admission_no=input("ENTER ADMISSION NO OF THE STUDENT :")
cursor=myConnection.cursor()
sql="SELECT * FROM MARKS WHERE SADMISSION_NO=’ %s’"
cursor.execute(sql,(admission_no,))
data=cursor.fetchall()
if data:
for i in data:
print(‘admission no:’i[0],’\n tamil:’,i[1],’\n english:’,i[2],’\n
math:’,i[3],
’\n science :’,i[4],’\n social:’,i[5],’\n computer:’,i[6],’\n
total:’,i[7],
‘\n average:’,i[8])
else:
print("Record Not Found , Please Try Again !")
cursor.close()
else:
print("\nSomthing Went Wrong ,Please Try Again !")

#MODULE TO PROVIDE HELP FOR USER


def helpMe():
print("Please, Visit The Offcial Website Of Vellamal To Download The
Mannual!!!")

# MAIN SCREEN OF THE SYSTEM


print("###########################################################
#########")

print("\n| SESSION 2023 - 2024 |")


print("\n| WELCOME |")
print("\n| Velammal Vidyalaya ,Viraganoor,Madurai |")
print("\n|*********************REPORT CARD
GENERATOR*******************|")
print("\n|******************DESIGNED AND MAINTAINED
BY:****************|")
print("\n|*************MAANESH - CLASS XII A1 - ROLL NO - 9
**********|")
print("\n|*************SIVA - CLASS XII A1 - ROLL NO - 16
*************|")
print("\n|*************VAITHEESH- CLASS XII A1 - ROLL NO - 21
*********|")
print("\n| |")
print("\n| REPORT CARD GENERATOR |")
print("\n| |")

print("###########################################################
#########")

#STARTING POINT OF THE SYSTEM

myConnection = MYSQLconnectionCheck()
if myConnection:
MYSQLconnectionCheck()
while(1):
print("| |")
print("| Enter 1 - New Admission. |")
print("| Enter 2 - Display Student's Data. |")
print("| Enter 3 - Update Students's Data . |")
print("| Enter 4 - Add Student's Marks Detail. |")
print("| Enter 5 - Generate All Student's Report Card. |")
print("| Enter 6 - Generate Student Wise Report Card. |")
print("| Enter 7- Exit. |")
print("| |")
print("| Enter 0(ZERO) - Help. |")
print("| |")
choice=int(input("PLEASE ENTER YOUR CHOICE : "))
if choice==1:
newstudent()
elif choice==2:
displayStudent()
elif choice==3:
updateStudent()
elif choice==4:
marksStudent()
elif choice==5:
reportCardAllStudent()
elif choice==6:
reportCardOneStudent()
elif choice==7:
myConnection.close()
break
elif choice==0:
helpMe()
else:
print("Sorry ,May Be You Are Giving Me Wrong Input, Please Try
Again !!! ")
else:
print("Check Your MYSQL Connection First !!! ")

# END OF THE PROJECT

SIGNING IN
Output:
MAIN SCREEN
NEW ADMISSION
DISPLAY STUDENTS DATA
UPDATE STUDENT’S DATA
CREATE ALL STUDENTS REPORT
CARD
CREATE A STUDENT REPORT
CARD
ADDING STUDENTS MARK DETAIL
HELP
MYSQL DATABASE AND TABLES
USED IN THIS PROJECT

DATABASE
TABLE STRUCTURE

BACKEND DATA GENERATED


THROUGH SOFTWARE
Future enhancement
 Implement a user authentication system with
different roles (e.g., admin, teacher, student,
parent) to control access to various parts of the
system.

 Create separate portals for students and parents to


access student-specific information such as
attendance, grades, and communication with
teachers.

 Add a feature to record and track student


attendance. Generate reports on student
attendance records.

 Allow teachers to assign homework and track its


completion. Students and parents can view
assignments and due dates.

Bibliography
 Text book: Computer science with python (by
Preeti Arora)
 Google.com-for any online queries.
 Github.com
 Realpython

You might also like

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy