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

Computer Science Project

The document presents a Computer Project for the All India Senior School Certificate Examination (AISSCE) 2020-21, focusing on an Automobile Service Station software developed in Python. It includes acknowledgments, system requirements, backend and frontend details, and various functionalities such as student profile management, marks entry, report card generation, and graphical analysis of performance. The project aims to maintain student profiles and generate report cards for classes XI and XII, while also outlining limitations such as the inability to update marks post-report generation.

Uploaded by

arshdodeja12
Copyright
© © All Rights Reserved
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
10 views

Computer Science Project

The document presents a Computer Project for the All India Senior School Certificate Examination (AISSCE) 2020-21, focusing on an Automobile Service Station software developed in Python. It includes acknowledgments, system requirements, backend and frontend details, and various functionalities such as student profile management, marks entry, report card generation, and graphical analysis of performance. The project aims to maintain student profiles and generate report cards for classes XI and XII, while also outlining limitations such as the inability to update marks post-report generation.

Uploaded by

arshdodeja12
Copyright
© © All Rights Reserved
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 26

ALL INDIA SENIOR SCHOOL CERTIFICATE

EXAMINATION
AISSCE
SESSION 2020-21
BIRLA SCHOOL, PILANI

Computer Project
On
AUTOMOBILE SERVICE STATION

Supervised By: Submitted by:

Mr. Dushyant Kumar

Department of Computer Sc. XII-A

Birla School Pilani


ACKNOWLEDGEMENT

I of Class XII A
with immense pleasure for presenting
my Project for the session 2020-21.

First of all, I am thankful to my


Principal Mr. Dhirendra Singh who
gave me this golden opportunity to
present this project in the form of
Python Program. I am also thankful to
my Computer Science teacher Mr.
Dushyant Kumar who guided me while
preparing it. I want to express my
deep gratitude to my family and
friends who helped me in
accomplishing this task.
CERTIFICATE

I, hereby certify that


of Class XII A of Birla School Pilani
has completed this Project work
under my supervision. He has taken
proper care and shown utmost
sincerity in completion of this project.

I also certify that this project is up to


my expectation and as per guidelines
issued by the CBSE
Teacher’s Signature:

Mr. Dushyant Kumar


Department of Computer Science
Birla School Pilani

TABLE OF CONTENTS

 INTRODUCTION TO PYTHON.
 INTRODUCTION TO THE
PROJECT.
 ACKNOWLEDGEMENT.
 SYSTEM REQUIREMENTS.
 BACKEND DETAILS.
 FRONTEND DETAILS.
 MOTIVE.
 SCREEN SHOTS OF EXECUTION.
 BIBLIOGRAPHY.
 LIMITATIONS.
 CERTIFICATE.
INTRODUCTION TO PYTHON

Python is an interpreted, object-oriented,


high-level programming language with
dynamic semantics. Its high-level built in
data structures, combined with dynamic
typing and dynamic binding, make it very
attractive for Rapid Application
Development, as well as for use as a
scripting or glue language to connect
existing components together. Python's
simple, easy to learn syntax emphasizes
readability and therefore reduces the cost
of program maintenance. Python supports
modules and packages, which encourages
program modularity and code reuse. The
Python interpreter and the extensive
standard library are available in source or
binary form without charge for all major
platforms, and can be freely distributed.

History of Python:
Python is a widely used general-purpose,
high-level programming language. It was
initially designed by Guido van Rossum in
1991 and developed by Python Software
Foundation. It was mainly developed for
emphasis on code readability, and its syntax
allows programmers to express concepts in
fewer lines of code.
INTRODUCTION TO THE PROJECT

The Examination Module System


software is an ERP software used in
government and private educational
institutions in the senior secondary level.
This software stores details of students
and their marks details in different
subjects. We can check the report card
of the student and perform marks
analysis by graphical method. This
software helps us to create profile for
students, update marks and attendance
details as per the requirement.

SYSTEM REQUIREMENTS

HARDWARE REQUIREMENT:

Printer- to print the required


documents of the project.
Compact Drive
Proccesor: Pentium III and above
RAM: 256 MB(minimum)
Hard-Disk : 20 GB(minimum)
SOFTWARE REQUIREMENT:

 Windows 7 or higher
 My-SQL server 5.5 or higher (as
backend)
 Python idle 3.6 or higher or spyder (as
frontend).
 Microsoft Word 2010 or higher for
documentation.

BACKEND DETAILS

Database Name: EXAM


Code:
Create Database Exam;
Use Exam;
Table Name: STUDENT
Attributes:
 adm_no int(6) (Primary Key)
 name varchar(40)

 class int(2)

 section char(1)

Code:
CREATE TABLE STUDENT (
adm_no INT(6) PRIMARY KEY,
Name VARCHAR(40),
class int(2),
section char(1));
Table Name: RESULT
Attributes:
Adm_no int(6)

exam_name varchar(30)

sub1 int(3)

sub2 int(3)

sub3 int(3)

sub4 int(3)

sub5 int(3)

total int(3)

percentage int(5)

attendance int(5)

grade char(1)

remarks varchar(50)

Code:
CREATE TABLE RESULT (
Adm_no int(6) PRIMARY KEY,
exam_name varchar(30),
sub1 int(3),
sub2 int(3),
sub3 int(3),
sub4 int(3),
sub5 int(3),
total int(3),
percentage int(5),
attendance int(5),
grade char(1),
remarks varchar(50));

FRONTEND DETAILS
PROGRAM CODE

import sys

import matplotlib.pyplot as plt

import mysql.connector

mycon=mysql.connector.connect(host='localhost',user='root', password='root',database='exam')

mycur=mycon.cursor()

def Student_Profile():

sql="Insert into student(adm_no,name,class,section)values(%s,%s,%s,%s)"

print('\nPLEASE PROVIDE THE REQUIRED INFORMATION\n')

ad=input('\nENTER THE ADMISSION NUMBER TO REGISTER FOR EXAM:')

nm=input('\nENTER THE STUDENT NAME:')

cls=int(input('\nENTER THE CLASS(11/12):'))

sec=input('\nENTER THE SECTION(A-D):')


value=(ad,nm,cls,sec)

try:

mycur.execute(sql,value)

print(nm,'ADDED SUCCESSFULLY TO EXAM MODULE')

mycon.commit()

except:

print('UNABLE TO INSERT!!!!!')

def Edit_Profile():

sql="Update student set section=%s where adm_no=%s";

ph=input('\nENTER THE ADMISSION NUMBER WHOSE SECTION TO MODIFY:')

nm=input('\nENTER THE NEW SECTION(A-D):')

value=(nm,ph)

try:

mycur.execute(sql,value)

mycon.commit()

print('RECORD UPDATED SUCCESSFULLY')

except:

print('UNABLE TO UPDATE SECTION!!!!')

def Remove_Profile():

ph=input('\nENTER THE ADMISSION NUMBER TO DELETE:')

sql='Delete from student where Adm_no=%s'

value=(ph,)

try:

mycur.execute(sql,value)

mycon.commit()

print('RECORD DELETED SUCCESSFULLY')

except:

mycon.rollback()

print('UNABLE TO DELETE RECORD!!!')


def Record_Entry():

sql="Insert into

result(adm_no,exam_name,sub1,sub2,sub3,sub4,sub5,total,percentage,attendance,grade,remarks)values(%s,

%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s)"

print('\nPLEASE PROVIDE THE REQUIRED INFORMATION\n')

ad=int(input('\nENTER THE ADMISSION NUMBER TO ENTER RECORD:'))

nm=input('\nENTER THE EXAM NAME:')

sub1=int(input('ENTER MARKS IN SUBJECT 1(MAX:100):'))

sub2=int(input('ENTER MARKS IN SUBJECT 2(MAX:100):'))

sub3=int(input('ENTER MARKS IN SUBJECT 3(MAX:100):'))

sub4=int(input('ENTER MARKS IN SUBJECT 4(MAX:100):'))

sub5=int(input('ENTER MARKS IN SUBJECT 5(MAX:100):'))

total=sub1+sub2+sub3+sub4+sub5

per=total//5

wrkday=int(input('ENTER TOTAL NUMBER OF WORKING DAYS:'))

present=int(input('ENTER NO OF DAYS PRESENT:'))

att=present/wrkday*100

att=int(att)

if(per>=90):

g='A'

rem='EXCELLENT PERFORMANCE!!'

elif(per>=75 and per<90):

g='B'

rem='VERY GOOD PERFORMANCE!!'

elif(per>=55 and per<=75):

g='C'

rem='SATISFACTORY PERFORMANCE!!'

elif(per>=35 and per<55):

g='D'
rem='AVERAGE PERFORMANCE!!'

else:

g='E'

rem='SCOPE FOR IMPROVEMENT!!'

value=(ad,nm,sub1,sub2,sub3,sub4,sub5,total,per,att,g,rem)

try:

mycur.execute(sql,value)

print('RECORD ADDED SUCCESSFULLY TO EXAM MODULE')

mycon.commit()

except:

print('UNABLE TO INSERT!!!!!')

def Report_Card():

ad=int(input('\nENTER THE ADMISSION NUMBER TO SEARCH:'))

sql1='Select * from student where adm_no=%s'

value=(ad,)

mycur.execute(sql1,value)

rec1=mycur.fetchone()

if(rec1!=None):

adm=rec1[0]

name=rec1[1]

cls=rec1[2]

sec=rec1[3]

sql2='Select * from result where adm_no=%s'

value=(ad,)

mycur.execute(sql2,value)

rec2=mycur.fetchone()

if(rec2!=None):

adm=rec2[0]

exname=rec2[1]
sub1=rec2[2]

sub2=rec2[3]

sub3=rec2[4]

sub4=rec2[5]

sub5=rec2[6]

total=rec2[7]

per=rec2[8]

att=rec2[9]

g=rec2[10]

rem=rec2[11]

if(rec1==None and rec2==None):

print('WRONG ADMISSION NUMBER GIVEN!!!!!!')

else:

print('\n\n--------REPORT CARD OF',name,'----------\n\n')

print('\nCLASS-',cls,'SECTION-',sec,'\n')

print('\n------------------------------\n')

print('\nRESULT OF',exname,'\n')

print('\n------------------------------\n')

if(sec=='A'):

print('\n ENGLISH : ',sub1)

print('\n HISTORY : ',sub2)

print('\n POL. SC : ',sub3)

print('\n ECONOMICS : ',sub4)

print('\n GEOGRAPHY : ',sub5)

print('\n TOTAL : ',total)

print('\n PERCENTAGE : ',per)

print('\n ATTENDANCE : ',att,'%')

print('\n GRADE : ',g)

print('\n REMAKS : ',rem)

elif(sec=='B'):
print('\n ENGLISH : ',sub1)

print('\n ACCOUNTANCY: ',sub2)

print('\n B.STUDIES : ',sub3)

print('\n ECONOMICS : ',sub4)

print('\n INFO.PRAC : ',sub5)

print('\n TOTAL : ',total)

print('\n PERCENTAGE : ',per)

print('\n ATTENDANCE : ',att,'%')

print('\n GRADE : ',g)

print('\n REMAKS : ',rem)

elif(sec=='C'):

print('\n ENGLISH : ',sub1)

print('\n PHYSICS : ',sub2)

print('\n COMP.SC : ',sub3)

print('\n CHEMISTRY : ',sub4)

print('\n MATHEMATICS: ',sub5)

print('\n TOTAL : ',total)

print('\n PERCENTAGE : ',per)

print('\n ATTENDANCE : ',att,'%')

print('\n GRADE : ',g)

print('\n REMAKS : ',rem)

elif(sec=='D'):

print('\n ENGLISH : ',sub1)

print('\n PHYSICS : ',sub2)

print('\n BIO.SC : ',sub3)

print('\n CHEMISTRY : ',sub4)

print('\n MATHEMATICS: ',sub5)

print('\n TOTAL : ',total)

print('\n PERCENTAGE : ',per)

print('\n ATTENDANCE : ',att,'%')


print('\n GRADE : ',g)

print('\n REMAKS : ',rem)

def Remove_Record():

ph=input('\nENTER THE ADMISSION NUMBER TO DELETE:')

sql='Delete from RESULT where Adm_no=%s'

value=(ph,)

try:

mycur.execute(sql,value)

mycon.commit()

print('RECORD DELETED SUCCESSFULLY')

except:

mycon.rollback()

print('UNABLE TO DELETE RECORD!!!')

def Graph():

ad=int(input('\nENTER THE ADMISSION NUMBER TO SEARCH:'))

sql1='Select * from result where adm_no=%s'

value=(ad,)

mycur.execute(sql1,value)

T=mycur.fetchone()

sql2='Select section from student where adm_no=%s';

mycur.execute(sql2,value)

s=mycur.fetchone()

L=[T[2],T[3],T[4],T[5],T[6]]

sec=s[0]

if(sec=='A'):

sub1,sub2,sub3,sub4,sub5='English','History','Pol.Sc','Economics','Geography'

elif(sec=='B'):
sub1,sub2,sub3,sub4,sub5='English','Accountancy','B.Studies','Economics','Info.Practices'

elif(sec=='C'):

sub1,sub2,sub3,sub4,sub5='English','Physics','Computer Sc.','Chemistry','Mathematics'

elif(sec=='D'):

sub1,sub2,sub3,sub4,sub5='English','Physics','Biology','Chemistry','Mathematics'

sub=[sub1,sub2,sub3,sub4,sub5]

clr=('red','green','blue','orange','brown')

plt.bar(sub,L,color=clr)

plt.xlabel('Subjects')

plt.ylabel('Marks')

plt.title('Marks Analysis')

plt.show()

def Close():

print('\nTHANK YOU FOR USING THE APPLICATION')

sys.exit()

print('-----------WELCOME TO EXAMINATION MODULE SYSTEM FOR CLASS-XI & XII-------------\n\n')

while(True):

print('\n\nPRESS 1 TO CREATE A STUDENT PROFILE')

print('PRESS 2 TO EDIT A STUDENT PROFILE')

print('PRESS 3 TO DELETE A STUDENT PROFILE')

print('PRESS 4 FOR MARKS AND ATTENDANCE ENTRY')

print('PRESS 5 TO GENERATE REPORT CARD')

print('PRESS 6 TO DELETE MARKS DETAILS')

print('PRESS 7 TO PRODUCE A GRAPH PERFORMANCE')

print('PRESS 8 TO CLOSE THE APPLICATION')

choice=int(input('ENTER YOUR CHOICE : '))

if(choice==1):

Student_Profile()
elif(choice==2):

Edit_Profile()

elif(choice==3):

Remove_Profile()

elif(choice==4):

Record_Entry()

elif(choice==5):

Report_Card()

elif(choice==6):

Remove_Record()

elif(choice==7):

Graph()

elif(choice==8):

Close()
MOTIVE

 To maintain the student profile, marks


and attendance details of the students
of class-XI and XII.

 To generate report card displaying the


marks of a student in different subjects
in a particular exam and represent the
same by graphical analysis.

 Globalized usage.

SCREEN SHOTS OF EXECUTION


MAIN MENU

CREATING STUDENT PROFILE

EDITING STUDENT PROFILE


MARKS AND ATTENDANCE
ENTRY

GENERATING REPORT CARD


PRODUCING GRAPH
DELETING STUDENTS PROFILE

BIBLIOGRAPHY
BOOKS:

 COMPUTER SCIENCE WITH PYTHON-


BY SUMITA ARORA
 COMPUTER SCIENCE WITH PYTHON-
BY PREETI ARORA
 PYTHON COOKBOOK

WEBSITES:
 www.geeksforgeeks.org
 https://docs.python.org/3/
 https://www.w3schools.com/python/

LIMITATIONS
 The Project has no provision to
update marks after the report card
is generated.

 The project does not incorporate


the provision of producing the
result of the entire class for a
particular examination.

 The project is limited to the


examination system of class-XI and
XII and does not provide the yearly
summary sheet report generation
facility.

You might also like