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

A Project Report

This document is a project report on a quiz game submitted by Deepak Satya and Naman Jain in partial fulfillment of the requirements for a Bachelor of Technology degree in computer science and engineering. The report describes the development of a web-based intelligent multiple choice question system called QUIZ GAME that allows students to take quizzes from anywhere as long as they have internet access. The system generates different questions for different students taking the same quiz to make it more intelligent. Teachers can use the system to evaluate students more effectively and efficiently compared to traditional paper-based quizzes.

Uploaded by

Deep Punjabi
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)
166 views

A Project Report

This document is a project report on a quiz game submitted by Deepak Satya and Naman Jain in partial fulfillment of the requirements for a Bachelor of Technology degree in computer science and engineering. The report describes the development of a web-based intelligent multiple choice question system called QUIZ GAME that allows students to take quizzes from anywhere as long as they have internet access. The system generates different questions for different students taking the same quiz to make it more intelligent. Teachers can use the system to evaluate students more effectively and efficiently compared to traditional paper-based quizzes.

Uploaded by

Deep Punjabi
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/ 40

A PROJECT REPORT

ON
QUIZ GAME
Submitted By
Deepak Satya
(20160937)
Naman Jain
(20160222)
In partial fulfillment for the award of the degree
Of
B. Tech
IN

COMPUTER SCIENCE & ENGINEERING


MANGALAYATAN UNIVERSITY, BESWAN, ALIGARH
June, 2019

i
CERTIFICATE

This is so certified that this report entitled “QUIZ GAME” by DEEPAK SATYA (20160937), submitted in the
partial fulfillment of the requirements for the degree Bachelor of technology in computer science and
engineering of the Mangalayatan University, Aligarh. During this academic year 2019-2020 is a bonfire record
of work carried out under my guidance and supervision.

Name of Internal Project Guide: MR. AMIT KUMAR UPADHYAY

(External Examiner)

Mrs. LEENA DHRUWA

(HEAD OF DEPARTMENT COMPUTER SCIENCE AND ENGINEERING)

Institute of Engineering and Technology

Mangalayatan University, Beswan Aligarh-202145

ii
ACKNOWLEDGEMENT

It is a matter of great pleasure for me to submit this report on project entitled “QUIZ GAME”. I have taken
efforts in this project. However, it would not have been possible without the kind support and help of our HOD
mam Mrs. Leena Dhruwa and computer science department . I would like to extend my sincere thanks to all
of them.

I am highly thankful to “MR. AMIT KUMAR UPADHYAY” for their guidance and constant supervision as
well as for providing necessary information regarding the project & also for their support in completing the
project.

Deepak Satya(20160937)

Naman jain(20160222)

iii
Table of Contents

Certificate………………………,,,,,……………………………………………………………….i

Acknowledgement………………………………………………………………………………….ii

Table of contents…………………………………………………………………………………...iii-iv

List of figures……………………………………………………………….......................................v

chapter 1 Introduction ………………………………………………………………………………..7

1.1Introduction to python……………………………………………………………………………8

1.1.1 Features of python………………………………………………………………………9-10

1.1.2 What Can You Do with Python? .....................................................................................11

1.1.3 How to install python……………………………………………………………...……12-13

1.1.4 Python Syntax compared to other programming languages…………………………….14

1.1.5. What should i learn as a beginner: python 2 or python 3? …………………..................14

1.1.6Why companies are moving from python 2 to 3…………………………………………15

1.1.7As a beginner, should i learn python 2 or 3 in 2018? ……………………………............16

1.2 PyCharm introduction ….……………………………………………………………..………….17

1.21Plug-in……..…………………………………………………...…………………….……18

1.2.2 History …..…………………………………………………...…………………….…19

1.2.3 Features of PyCharm …………………………………………………………………19-20

1.2.4 PyCharm installation…………………………………...……………………………..20-24

1.2.5 Python - tkinter tkmessagebox………………………..………………………….......25-26

Chapter2 Design and implementation……………………………….………………………………..27

2.1First page of quiz……………………………………………………………………….…....27-33

2.2Adding question to quiz………………………….…………………………………………….33

2.3Result after completion……….……………….………………………………………………33-35

iv
Chapter 3 Testing and deployment………………….………………………………………………….36-37

Chapter 4Results and conclusion………………………………………………………………………..38

Chapter 5Future scope……….…………………………………………………………………………...39

References ………………..……………………………………………………………………………. 40

v
LIST OF FIGURES

FIG NO. DISCRIPTION PAGE NO.

1.1 Features of python 9


1.2 How to install python 12
1.3 Python 2 vs. python 3 14
1.4 Download PyCharm 22
1.5 Choose install location 22
1.6 Choose folder 23
1.7 Pycharm installation 23
1.8 Pycharm installing 24
1.9 Installation complete 24
1.10 Welcome to PyCharm 25
1.11 New project 25
2.1 Transparent hat 29
2.2 Quiz hat 30
2.3 Start picture 30
2.4 Quiz with start 31
2.5 Quiz start with rules 32
2.6 Front page 33
2.7 Question format 33
2.8 You should work hard 35
2.9 You can do better 36
2.10 You are excellent 36
3.1 Radio button error 37

vi
Chapter 1
INTRODUCTION

This is a web-based intelligent multiple-choice-question examination system, named QUIZ GAME, for
assessing students. It is a system by which students can appear in a quiz from anywhere of the world where
there is no interaction between pencil and paper rather interaction between computer and human being. We use
the term intelligent here as the system generates questions intelligently. There are many definitions of
intelligence but we use the term intelligence in the sense that the system generates the a new question of a quiz
by depending on the result of the question last answered and for the same quiz of a subject it generates different
questions for different students.

The questions vary student to student for the same quiz while they are sitting in the quiz at the same time.
Teachers can use the QUIZ GAME for evaluating students effectively, efficiently and perfectly.

Any university, college, school or educational institute can use this system for their organization to take
quizzes. Today it is the more efficient and effective methods of assessing distant students.

One of the main benefits of our system is automated marking, that is, teachers do not need to check the answer
script as they do in manual quiz. It saves valuable time of a teacher. On the other hand, students can score
according to his/her merit level and it will give feedback about a student in which side he/she is weak.

In recent years, the use of online quiz systems has become quite popular due to pressures of increasing class
sizes and the need for more efficient and effective methods of assessing distant students. It is due to the
popularity of distant education.

Still now maximum educational institutes have been using manual system to take quiz. In the recent year a few
instructors of some institutes have been using web-based M.C.Q. quiz system. Actually, it depends on how
much web technology a country takes or uses. For example, in Bangladesh it is rare to use a web based quiz
system. But in case of U.S.A. it is a general case to use a web based quiz system

vii
Introduction to python

Python is developed by Guido van Rossum. Guido van Rossum started implementing Python in 1989.
Python is a very simple programming language so even if you are new to programming. It was mainly
developed for emphasis on code readability, and its syntax allows programmers to express concepts in fewer
lines of code. Python was originally conceptualized by Guido van Rossum in the late 1980s as a member of the
National Research Institute of Mathematics and Computer Science. Initially, it was designed as a response to
the ABC programming language that was also fore grounded in the Netherlands. Among the main features of
Python compared to the ABC language was that Python had exception handling and was targeted for the
Amoeba operating system (go Python!).

Features of python

Fig:1.1

viii
 Readable: Python is a very readable language.
 Easy to Learn: Learning python is easy as this is a expressive and high level programming
language, which means it is easy to understand the language and thus easy to learn.
 Cross platform: Python is available and can run on various operating systems such as Mac,
Windows, Linux, UNIX etc. This makes it a cross platform and portable language.
 Open Source: Python is a open source programming language.
 Large standard library: Python comes with a large standard library that has some handy codes
and functions which we can use while writing code in Python.
 Free: Python is free to download and use. This means you can download it for free and use it in
your application. See: Open Source Python License. Python is an example of a FLOSS
(Free/Libre Open Source Software), which means you can freely distribute copies of this
software, read its source code and modify it.
 Supports exception handling: If you are new, you may wonder what is an exception? An
exception is an event that can occur during program exception and can disrupt the normal flow of
program. Python supports exception handling which means we can write less error prone code
and can test various scenarios that can cause an exception later on.
 Advanced features: Supports generators and list comprehensions. We will cover these features
later.
 Automatic memory management: Python supports automatic memory management which
means the memory is cleared and freed automatically. You do not have to bother clearing the
memory.

WHAT CAN YOU DO WITH PYTHON?


You may be wondering what all are the applications of Python. There are so many applications of Python; here
are some of the them

 Web development – Web framework like Django and Flask are based on Python. They help you write
server side code which helps you manage database, write backend programming logic, mapping urls etc.

 Machine learning – There are many machine learning applications written in Python. Machine
learning is a way to write a logic so that a machine can learn and solve a particular problem on its own.
For example, products recommendation in websites like Amazon, Flipkart, eBay etc. is a machine
learning algorithm that recognises user’s interest. Face recognition and Voice recognition in your phone
is another example of machine learning.

ix
 Data Analysis – Data analysis and data visualization in form of charts can also be developed using
Python.

 Scripting – Scripting is writing small programs to automate simple tasks such as sending automated
response emails etc. Such type of applications can also be written in Python programming language.

 Game development – You can develop games using Python.

 You can develop embedded applications in Python.

 Desktop applications – You can develop desktop application in Python using library like TKinter or
QT.

How to install python

Python installation is pretty simple, you can install it on any operating system such as Windows, Mac
OS X, Ubuntu etc

To install the Python on your operating system, go to this link

: https://www.python.org/downloads/.

It is highly unlikely that your Windows system shipped with Python already installed. Windows systems
typically do not. Fortunately, installing does not involve much more than downloading the Python installer from
the python.org website and running it. Let’s take a look at how to install Python 3 on Windows:

You will see a screen like this.

x
Fig:1.2
This is the official Python website and it will detect the operating system and based on that it would recommend
you to download Python. Here I am using Mac OS X so it gave me the download options for Python 2 and
Python 3 for Mac OS X. I would recommend you to download the latest version of Python 3 (Python 3.6.4 in
the screenshot).

Installation steps are pretty simple. You just have to accept the agreement and finish the installation.

If you are using Mac OS X then you may notice that Python is already installed in your system,

However it would most likely be a Python 2 so you can download the latest Python 3 version from here and
install it in your system.

xi
PYTHON SYNTAX COMPARED TO OTHER PROGRAMMING
LANGUAGES
 Python was designed for readability, and has some similarities to the English language with influence
from mathematics.
 Python uses new lines to complete a command, as opposed to other programming languages which often
use semicolons or parentheses.
 Python relies on indentation, using whitespace, to define scope; such as the scope of loops, functions
and classes. Other programming languages often use curly-brackets for this purpose.

WHAT SHOULD I LEARN AS A BEGINNER: PYTHON 2 OR PYTHON 3?


In the past, there was a bit of a debate in the coding community about which Python version was the best one to
learn: Python 2 vs. Python 3 (or, specifically, Python 2.7 vs 3.5).

Now, in 2018, it’s more of a no-brainer: Python 3 is the clear winner for new learners or those wanting to
update tudemheir skills. Here, we'll cover why Python 3 is better, and why companies have been moving from
Python 2 to 3 en masse.

That said, there are still some situations where picking up Python 2 might be advantageous. Or you may just
want to learn a little of the history and the differences between Python 2 and 3 for curiosity's sake.

So, without further ado, let’s take a look at some of the major differences between Python 2 vs Python 3–plus
where to learn Python 3 programming as a beginner.

A LITTLE HISTORY OF PYTHON 2 VS 3


Python 2.0 was first released in 2000. Its latest version, 2.7, was released in 2010.

Python 3.0 was released in 2008. Its newest version, 3.6, was released in 2016, and version 3.7 is currently in
development.

Although Python 2.7 is still widely used, Python 3 adoption is growing quickly. In 2016, 71.9% of projects used
Python 2.7, but by 2017, it had fallen to 63.7%. This signals that the programming community is turning to
Python 3–albeit gradually–when developing real-world applications.

Notably, on January 1, 2018, Python 2.7 will “retire” and no longer be maintained.

xii
WHAT ARE THE MAIN PYTHON 2 VS 3 2018 DIFFERENCES?

There are plenty of differences between these Python programming versions, but here are five of the main ones.

Fig: 1.3

1. PYTHON 2 IS LEGACY, PYTHON 3 IS THE FUTURE.

Since Python 2 has been the most popular version for over a decade and a half, it is still entrenched in the
software at certain companies.

However, since more companies are moving from Python 2 to 3, someone who wants to learn Python
programming for beginners may wish to avoid spending time on a version that is becoming obsolete.

2. PYTHON 2 AND PYTHON 3 HAVE DIFFERENT (SOMETIMES INCOMPATIBLE) LIBRARIES

Since Python 3 is the future, many of today's developers are creating libraries strictly for use with Python 3.

Similarly, many older libraries built for Python 2 are not forwards-compatible.

xiii
You may be able to port a 2.x library to 3.x., but this can be difficult and complicated; it's definitely not a
“Python for beginners” type of activity.

3. THERE IS BETTER UNICODE SUPPORT IN PYTHON 3

In Python 3, text strings are Unicode by default. In Python 2, strings are stored as ASCII by default–you have to
add a “u” if you want to store strings as Unicode in Python 2.x.

This is important because Unicode is more versatile than ASCII. Unicode strings can store foreign language
letters, Roman letters and numerals, symbols, emojis, etc., offering you more choices.

4. PYTHON 3 HAS IMPROVED INTEGER DIVISION

In Python 2, if you write a number without any digits after the decimal point, it rounds your calculation down to
the nearest whole number.

For example, if you’re trying to perform the calculation 5 divided by 2, and you type 5 / 2, the result will be 2
due to rounding. You would have to write it as 5.0 / 2.0 to get the exact answer of 2.5.

However, in Python 3, the expression 5 / 2 will return the expected result of 2.5 without having to worry about
adding those extra zeroes.

This is one example of how Python 3 syntax can be more intuitive, making it easier for newcomers to learn
Python programming.

5. THE TWO VERSIONS HAVE DIFFERENT PRINT STATEMENT SYNTAXES

This is only a syntactical difference–and some may consider it trivial–so it doesn’t affect the functionality of
Python. That said, it is still a big and visible difference you should know about.

Essentially, in Python 3, the print statement has been replaced with a print () function.

For example, in Python 2 it is print “hello” but in Python 3 it is print (“hello”).

If you're going to learn Python programming for the first time, it shouldn't affect you much. But if you started
with Python 2, the change may trip you up a few times.

WHY COMPANIES ARE MOVING FROM PYTHON 2 TO 3


As mentioned earlier, most companies are still using Python 2 for legacy reasons, but more and more companies
are using Python 3, or beginning to make the switch from 2 to 3.

So, let's look at Instagram and Facebook–two companies that have switched from Python 2 to 3 or are in the
process of doing so–and why they chose to do so.

xiv
INSTAGRAM

In 2017,

Instagram migrated the majority of their Python code base from Python 2.7 to Python 3.

Why they use it:

Python is not traditionally a typed language, but Python v3.5 supports typing, which removes development
conflicts when working new pieces of code.

Each newer version of Python continues to get faster runtime. Meanwhile, nobody’s currently working to make
Python 2.7 work faster.

Community support is better with Python 3.

FACEBOOK

Facebook is currently in the process of upgrading their infrastructure and handlers from Python 2 to Python 3.4.

Why they use it:

According to Real Python, “The ease of using Python libraries means that the production engineers don’t have
to write or maintain as much code, allowing them to focus on getting improvements live. It also ensures that the
infrastructure of Facebook is able to scale efficiently.”

Watch this talk on YouTube for more information about the changing culture of Python at Facebook.

AS A BEGINNER, SHOULD I LEARN PYTHON 2 OR 3 IN 2018?

The simple answer? Learn the latest version (which at time of writing is Python 3.7.0).

Some of the changes made in Python 3 have actually made it easier for beginners to understand, so it's the best
way to learn Python for the first time.

This is the best way to future-proof yourself as more and more programmers pursue Python 3 adoption. Keep in
mind that Python 2.7 will no longer be supported after 2020, so dedicating effort to learning it at this point
won't make sense for most folks. I say “most” because there are a few types of people who might need it.

xv
PYCHARM – INTRODUCTION

PyCharm is the most popular IDE used for Python scripting language. This chapter will give you an
introduction to PyCharm and explains its features.

PyCharm offers some of the best features to its users and developers in the following aspects −

 Code completion and inspection


 Advanced debugging
 Support for web programming and frameworks such as Django and Flask

PyCharm is an integrated development environment (IDE) used in computer programming, specifically


for the Python language. It is developed by the Czech company JetBrains.[6] It provides code analysis, a
graphical debugger, an integrated unit tester, integration with version control systems (VCSes), and
supports web development with Django as well as Data Science with Anaconda.[7]

PyCharm is cross-platform, with Windows, macOS and Linux versions. The Community Edition is
released under the Apache License,[8] and there is also Professional Edition with extra features –
released under a proprietary license.

USES OF PYCHARM
 Coding assistance and analysis, with code completion, syntax and error highlighting, linter integration,
and quick fixes
 Project and code navigation: specialized project views, file structure views and quick jumping between
files, classes, methods and usages
 Python refactoring: including rename, extract method, introduce variable, introduce constant, pull up,
push down and others
 Support for web frameworks: Django, web2py and Flask
 Integrated Python debuggers
 Integrated unit testing, with line-by-line code coverage
 Google App Engine Python development
 Version control integration: unified user interface
for Mercurial, Git, Subversion, Perforce and CVS with change lists and merge

PLUGINS
PyCharm provides API so that developers can write their own plugins to extend PyCharm features.
Several plugins from other JetBrains IDE also work with PyCharm. There are more than 1000 plugins
which are compatible with PyCharm
xvi
HISTORY

The beta version was released in July 2010, with the 1.0 arriving 3 months later. Version 2.0 was released on 13
December 2011, version 3.0 on 24 September 2013, and version 4.0 on 19 November 2014.[10]

PyCharm Community Edition, the open source version of PyCharm, became available on 22 October
2013

FEATURES OF PYCHARM
Besides, a developer will find PyCharm comfortable to work with because of the features mentioned below

Code Completion

PyCharm enables smoother code completion whether it is for built in or for an external package.

SQLAlchemy as Debugger

You can set a breakpoint, pause in the debugger and can see the SQL representation of the user expression for
SQL Language code.

Git Visualization in Editor

When coding in Python, queries are normal for a developer. You can check the last commit easily in PyCharm
as it has the blue sections that can define the difference between the last commit and the current one.

Code Coverage in Editor

You can run .py files outside PyCharm Editor as well marking it as code coverage details elsewhere in the
project tree, in the summary section etc.

Package Management

All the installed packages are displayed with proper visual representation. This includes list of installed
packages and the ability to search and add new packages.

xvii
Local History

Local History is always keeping track of the changes in a way that complements like Git. Local history in
PyCharm gives complete details of what is needed to rollback and what is to be added.

Refactoring

Refactoring is the process of renaming one or more files at a time and PyCharm includes various shortcuts for a
smooth refactoring process.

User Interface of PyCharm Editor

The user interface of PyCharm editor is shown in the screenshot given below. Observe that the editor includes
various features to create a new project or import from an existing project.

xviii
PYCHARM – INSTALLATION
Steps Involved

You will have to follow the steps given below to install PyCharm on your system. These steps show the
installation procedure starting from downloading the PyCharm package from its official website to creating a
new project.

Step 1

Download the required package or executable from the official website of PyCharm
https://www.jetbrains.com/pycharm/download/#section=windows Here you will observe two versions of
package for Windows as shown in the screenshot given below –

Fig 1.4
Note that the professional package involves all the advanced features and comes with free trial for few days and
the user has to buy a licensed key for activation beyond the trial period. Community package is for free and can
be downloaded and installed as and when required. It includes all the basic features needed for installation. Note
that we will continue with community package throughout this tutorial.

Step 2
xix
Download the community package (executable file) onto your system and mention a destination folder as
shown below −

Fig 1.5

xx
Fig 1.6

Step 3

Now, begin the installation procedure similar to any other software package.

Fig 1.7

xxi
Fig 1.8

Step 4

Once the installation is successful, PyCharm asks you to import settings of the existing package if any.

xxii
Fig 1.9

Fig 1.10

xxiii
1.11
This helps in creating a new project of Python where you can work from the scratch. Note that unlike other
IDEs, PyCharm only focusses on working with projects of Python scripting language.

PYTHON - TKINTER TKMESSAGEBOX

The tkMessageBox module is used to display message boxes in your applications. This module provides a
number of functions that you can use to display an appropriate message.
Some of these functions are show info, showwarning, showerror, askquestion, askokcancel, askyesno, and
askretryignore.

Syntax
Here is the simple syntax to create this widget −

tkMessageBox.FunctionName(title, message [, options])

Parameters

FunctionName − this is the name of the appropriate message box function.

xxiv
Title − This is the text to be displayed in the title bar of a message box.

Message − This is the text to be displayed as a message.

Options − options are alternative choices that you may use to tailor a standard message box. Some of the
options that you can use are default and parent. The default option is used to specify the default button, such as
ABORT, RETRY, or IGNORE in the message box. The parent option is used to specify the window on top of
which the message box is to be displayed.

You could use one of the following functions with dialogue box −

showinfo()

showwarning()

showerror ()

askquestion()

askokcancel()

askyesno ()

askretrycancel ()

xxv
Chapter 2
DESIGN AND IMPLEMENTATION
As our project is a mcq type quiz so with the help of tkinker library in pycharm we create our quiz.

First page of quiz

In the making of first page of the quiz game first we create the folder for our project in our laptop, then in the
firstly we import the tkinter and in tkinter we imort all. As for our project we need a root window so for this we
use the function

root = tkinter.TK()

root.mainloop()

then we give title to the root file

root.title(“quizstar”)

and the as we are using tkinter so we have to give geometry for the window so for that we give this line

root.geometry(“700*600”)

for the starting page of the quiz we are giving an image to the programe so that our project uses that code to
give information about the starting of our project . For that the we use the code

img1 = PhotoImage(file = “transparentGradHat”)

labelimage = Label(

root,

image = img1,

background = "#ffffff",

so that after this the starting of our project is shown in the given figure:

xxvi
Fig 2.1
As the figure is transparent but as when we use the figure in the tkinter then it will give the white background to
the hat

But as we can see this is just a pic of hut nothing is written on the page so for that we have to give some line of
command for that

labeltext = Label(

root,

text = "Quiz",

font = ("Comic sans MS",24,"bold"),

background = "#ffffff",

xxvii
Fig 2.2
As now the hat and quiz is shown so now we have to use a button so that with the help of our button we can go
to questions after reading all the rules of the quiz so for the use of the button we have to write a code to use
button

As in our button we are not using any key in our button we are using a image as shown below

Fig 2.3
So we are using this start image in our button so that user can start there quiz

The code that we use in for the button is shown below

labeltext.pack(pady=(0,50))
xxviii
img2 = PhotoImage(file="Frame.png")

btnStart = Button(

root,

image = img2,

relief = FLAT,

border = 0,

command = startIspressed,

so after this succesfull compiling our first page is show below

Fig 2.4
For the term and rules we use the lable in our program for the lable we use the code

lblInstruction = Label(

xxix
root,

text = "Read The Rules And\nClick Start Once You Are ready",

background = "#ffffff",

font = ("Consolas",14),

justify = "center",

after the use of lable aur project is look like

Fig 2.5

xxx
Again we use lable to declare our rules for the quiz for the second lable we use the dark background so that it be
different from the last lable that we have used

The code that is use to make rules lable is given below

lblRules = Label(

root,

text = "This quiz contains 10 questions\nYou will get 20 seconds to solve a question\nOnce you select a radio
button that will be a final choice\nhence think before you select",

width = 100,

font = ("Times",14),

background = "#000000",

foreground = "#FACA2F",

So after the rules start button lable hat all are given now our front page of the programe is ready so the final
image of the front page is show below

xxxi
Fig 2.6

Adding questions to our quiz

When the first page of the quiz is ready then we have to add question to our quiz for this we are using the list
and array in our program as for the quiz we have to give 10 question to our quiz and 10 respectively answer for
the following question for each question we have to 4 optoion in which 3 options are incorrect and only one
option is correct

For the option menu we are using the remote button as we are using remote button for each option we have to
give different value for each button other wise if we give same value to all the button they select the all the
button automatically
xxxii
And as the user can see only 5 question out of 10 then we have to make a array name indexes so that in index
the program we use random to select the random question from the 10 question

We use if else statement in the indexes as no question should be repeated and every time a unique set will
appear to the user. The question look like are shown in the figure:

Fig 2.7

Result shown

After the completion of the front page then we have to gives question to our quiz as we are giving 10 question
to our quiz but the quiz only give you random 5 questions as for the answer we are using the radio button so as
the property of the radio button if you once select the button you cannot change your choice so the user should
be very careful before selecting the answer. Once the user give the answer for that particular question then only
the next question will arrive automatically. After attempting all the question of the quiz the program analysis
all the attempt question that the attempted question is wrong or right .

xxxiii
The result of the quiz is not in number rather than number we used some different types of images for the result
as if the user score is very bad means the user score 0 or 1 in the quiz than the image that shown by the program
is shown below

Fig 2.8

And if the user score is 2 or 3 then the image shown is below

xxxiv
Fig 2.9
And if the user score the result 4 or 5 then the image shown is below

Fig 2.10

As in the end of the result one of these picture will show and the user get to know about the score of the quiz

xxxv
Chapter 3
TESTING AND DEPLOYMENT

As we all know that a python use the interpreter for the compilation of the program so in the python it is easy to
find the bugs in our program so the first bug we faced in the program is regarding the tkinter geometry as we
have to give the perfect geometry for the ktinter and when we open the ktinter geometry in the full screen it not
looking good s for that we have to give limitation for the ktinter that it should not be going into full screen.
After the geometry of the tkinter when ever we use any image in the program it gives us a gray background due
to tkinter

For this we have to give white background for the images

And when we use the remote button in the program then in the result it is selecting all the answer in the
geometry as you can seen in the image

Fig 3.1

To remove this error we have given the different value for each radio button

xxxvi
After this when we add questions to our program then we have given 10 number of question but in our quiz it
will only show you 5 question so for this we have used list and array so to define the number of questions

We use list to define the question and there all the four option for that question

Then we make a array name as “indexes”. So with the help of indexes it will show only five question but it may
can repeat the question so for that we are using if statement in our program so that the question show not get
repeated the code is shown below

indexes = []

def gen():

global indexes

while(len(indexes) < 5):

x = random.randint(0,9)

if x in indexes;

continue

else:

indexs.append(x)

xxxvii
Chapter 4
RESULT AND CONCLUSION

In this thesis, we have focused on the automated system, which replaces the manual quiz system. But the
interesting thing is that the thesis is not just an online quiz system; it has its own intelligent capability. This was
actually our target feature of our thesis. Basically, we have tried to introduce the evaluation method of student-
performance and the feed back of the student in the online quiz. Here, the questions are appeared according to
the previous answer of that student.

We have implemented it in our thesis and it works successfully in our system. In this system, an educational
institute can make their examination procedure automated. It gives the opportunity to the authority to register
teachers for different subjects and also give the facility to the students to register their courses for the
examinations using the quiz. Though this is a MCQ based quiz system but it is a perfect MCQ based online quiz
system that gives a lot of facilities to the users, as a modern quiz system should have. This system is designed
basically for the educational institute but also can be developed for other examination systems like job
interview, quiz contest and for other criteria.

xxxviii
Chapter 5
FUTURE SCOPE

 In this we will add timer for every question


 And increase the number of question
 And the quiz will also contain subject wise question
 And each and every student have its login id and password
 The graph representation in performance of every student will show in end.

xxxix
REFERENCES

 https://beginnersbook.com/2018/01/introduction-to-python-programming/

 PYTHON US FOUNDATION

https://www.python.org/

 PYCHARM

https://www.jetbrains.com/pycharm/download/#section=windows

Other sites used:

 https://www.jetbrains.com/pycharm/download/#section=window
 https://www.w3schools.com/python/python_syntax.asp
 https://realpython.com/python-introduction/
 https://developerinsider.co/the-introduction-to-python-programming-language/
 https://www.udemy.com/pythonforbeginnersintro/
 https://www.tutorialspoint.com/pycharm/index.htm

xl

You might also like