SRI CHAITANYA TECHNO SCHOOL, MANAPAKKAM
ACADEMIC YEAR (2024 - 2025)
PROJECT ON QUIZ MASTERS PROGRAM
ROLL NUMBER :
NAME : MOHITHA MOWLI P
CLASS : Ⅻ
SUBJECT : COMPUTER SCIENCE
SUBJECT CODE : 083
PROJECT GUIDE : Mrs. Swetha Lakshmi., M. Sc (IT)., B.Ed.,
SRI CHAITANYA SENIOR SECONDARY SCHOOL,
MANAPAKKAM,TAMILNADU.
1
SRI CHAITANYA TECHNO SCHOOL, MANAPAKKAM
CERTIFICATE
This is to certify that Cadet MOHITHA MOWLI P
Roll No:________________ has successfully completed the project work
entitled “QUIZ MASTERS PROGRAM” in the subject Computer
Science (083) laid down in the regulations of CBSE for the purpose
Practical Examination in Class Ⅻ to be held in Sri Chaitanya Senior
Secondary School, Manapakkam on_____________________.
Mrs. SWETHA LAKSHMI., M. Sc (IT)., B.Ed.,
(INTERNAL EXAMINER) EXTERNAL EXAMINER
EXAMINER 1 EXAMINER
2
ACKNOWLEDGEMENT
The successful completion of this project is the result of the collective
efforts, guidance, and support of several individuals, to whom I am deeply
indebted. I would like to express my sincere gratitude to my parents for
their unwavering encouragement, motivation, and belief in my abilities,
which have been a constant source of inspiration throughout this journey. I
extend my appreciation to all those whose contributions, whether directly
or indirectly, have supported me in completing this project. Their insights
and assistance have been invaluable.
I gratefully acknowledge to the contributions of the individuals who
contributed in bringing this project up to this level who continues to look
after me despite my flaws.
I express my sincere thanks to the Academic Principal, Mrs. N.S.
SWATHI SRINIVASAN., M.Sc., B.Ed., Sri Chaitanya Senior Secondary
School, Manapakkam for the constant encouragement and moral support
during this project.
My sincere thanks to Mrs. SWETHA LAKSHMI., M. Sc (IT).,
B.Ed., a guide, Mentor and above all a friend who critically reviewed my
project and helped in solving each problem, occurred during the
implementation of the project.
These guidance and support received from all the member who
contributed and who are contributing to this project, was vital for the
success of the project and grateful for their support and help.
3
INDEX
S.NO TITLE PAGE NO.
BRIEF OVERVIEW OF
1 5
PROJECT
NEED FOR
2 6
COMPUTERIZATION
SOFTWARE AND HARDWARE
3 7
REQURIEMENTS
4 ADVANTAGES OF PROJECT 8
5 SOURCE CODE IN PYTHON 9
6 OUTPUT SCREEN 13
7 BIBLIOGRAPHY 15
4
Brief Overview of Project
Quiz master is based on popular reality quiz shows where a
player has to answer some questions based on various themes.
The player gets to choose the correct answer from four different
sets of options. If the player chooses the right option he gets one
point and proceeds. If the option was wrong no points will be
allotted.
Quiz Competitions are other events where similar mechanism is
used. Programming language used for this projects are python
and MySQL. Whole program is on python whereas database is
stored on MySQL server database. Upon running the program,
Player has to enter his/her name followed by starting the quiz. At
the end total points scored by the player are shown. Similar
mechanism can be seen in Quiz competitions too. Whether it be
of school level or regional level.
5
Need Of Computerization
The use of computerized quizzes is highly recommended for any
instructor teaching a course that is either large in size (with a
typical lecture format) or that requires that students to engage
in a significant amount of assigned readings. Students appear to
benefit from the use of such computerized quizzes as they
become actively engaged in the course material and study with
greater frequency throughout the semester.
Computerized settings can be designed to provide students with
immediate feedback regarding their quiz grades and allow them
to take each quiz more than once to provide greater mastery of
the material. It may be helpful to limit the number of quiz
attempts to three.
Automatic, computerized grading and entry of each student’s
highest quiz grades into the course gradebook will generate
significant time savings for the instructor and provide students
with immediate feedback on their quiz performance.
6
Software and Hardware
Requirements
# SOFTWARE SPECIFICATION
Operating System : Windows 10/8/7
Platform : Python IDLE 3.7/3.8
Database : MySQL
Languages : Python
# HARDWARE SPECIFICATION
Processor : Dual core or above
Hard Disk : 40 GB
RAM : 1024 MB
7
Advantages of Project
Present day everything is virtually presented.
Quiz master is very simple yet has attractive interface which
makes quiz completions easier and more enjoyable.
Specific recommendations for the use of Quiz Master can be
made including:
• To encourage students to engage in long-term learning,
include some of the individual online quiz questions on
midterm and final exams
• To deter student cheating, the order of quiz questions as
well as their multiple choice answers is randomized.
• User friendly
• Responsive design
• Automatically checks answers
• It saves paper
• Publishes score instantaneously after quiz ends
8
# SOURCE CODE IN PYTHON
import sys
import mysql.connector
import random
mydb=mysql.connector.connect(host= "localhost" ,user= "root",\
passwd="root",database= "quiz")
mycursor=mydb.cursor()
def Home():
f=1
while f!=3:
print("Welcome to Quiz")
print("********************")
print("1. Enter Questions")
print("2. Take Quiz")
print("3. Exit")
f=int(input("Enter your choice: "))
if f==1:
Question()
elif f==2:
Quiz()
elif f==3:
print("Exiting the Quiz")
mycursor.close()
mydb.close()
sys.exit();
else:
Home()
9
def Question():
ch='Y'
while ch=='Y' or ch=='y':
print("Welcome to Question Portal")
print("***********************")
q=input("Enter the question :")
op1=input("Enter the option 1 :")
op2=input("Enter the option 2 :")
op3=input("Enter the option 3 :")
op4=input("Enter the option 4 :")
ans=0
while ans==0:
op=int(input("Which option is correct answer (1,2,3,4) :"))
if op==1:
ans=op1
elif op==2:
ans=op2
elif op==3:
ans=op3
elif op==4:
ans=op4
else:
print("Please choose the correct option as answer")
mycursor.execute("Select * from question")
data=mycursor.fetchall()
qid=(mycursor.rowcount)+1
mycursor.execute("Insert into question values (%s,%s,%s,%s,%s,%s,%s)",(qid,q,op1,op2,op3,op4,ans))
10
mydb.commit()
ch=input("Question added successfully.. Do you want to add more (Y/N)")
Home()
def Quiz():
print("Welcome to Quiz portal")
print("***********************")
mycursor.execute("Select * from question")
data=mycursor.fetchall()
name=input("Enter your name :")
rc=mycursor.rowcount
noq=int(input("Enter the number of questions to attempt (max %s):"%rc))
l=[]
while len(l)!=noq:
x=random.randint(1,rc)
if l.count(x)>0:
l.remove(x)
else:
l.append(x)
print("Quiz has started")
c=1
score=0
for i in range(0,len(l)):
mycursor.execute("Select * from question where qid=%s",(l[i],))
ques=mycursor.fetchone()
print("--------------------------------------------------------------------------------------------")
print("Q.",c,": ",ques[1],"\nA.",ques[2],"\t\tB.",ques[3],"\nC.",ques[4],"\t\tD.",ques[5])
print("--------------------------------------------------------------------------------------------")
11
c+=1
ans=None
while ans==None:
choice=input("Answer (A,B,C,D) :")
if choice=='A' or choice=='a':
ans=ques[2]
elif choice=='B' or choice=='b':
ans=ques[3]
elif choice=='C' or choice=='c':
ans=ques[4]
elif choice=='D' or choice=='d':
ans=ques[5]
else:
print("Kindly select A,B,C,D as option only")
if ans==ques[6]:
print("Correct")
score=score+1
else:
print("Incorrect.. Correct answer is :",ques[6])
print("Quiz has ended !! Your final score is :",score)
input("Press any key to continue")
Home()
Home()
12
#OUTPUT SCREEN
13
#MYSQL TABLE
#LIMITATIONS
• Need to add questions first before playing quiz
• No permanent score board
14
❖ Computer science With Python - Class XII
By: Sumita Arora
❖ Website: https://www.w3resource.com
15