0% found this document useful (0 votes)
60 views23 pages

CS Final Project

The document describes a jumble word game project built using Python. It includes sections on the game rules, objective, introduction, system development life cycle, modules used, and advantages of the game.

Uploaded by

Harsh Tiwari
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)
60 views23 pages

CS Final Project

The document describes a jumble word game project built using Python. It includes sections on the game rules, objective, introduction, system development life cycle, modules used, and advantages of the game.

Uploaded by

Harsh Tiwari
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/ 23

Table of Contents

Serial Description Pag

No.
No.

1 Certificate 02

2 Acknowledgement 03

3 Introduction 04-08

4 Objective of the project 09

5 Proposed system 10

6 System Development Life Cycle (SDLC) 11

7 Modules used and their purposes 12-14

8 Flowchart 15

9 Source Code 16

10 Output Screens 17-19

11 Requirements 20

13 Bibliography 21

14 Remark 22

1|Page
Certificate
This is to certify that Harsh Tiwari student class XII
A(science) has successfully prepared the report on the
project entitled ‘Jumble Word Game’ under able guidance
of Mr. Sunil Kumar Sharma (PGT computer science).

The project is found worthy of acceptance as final Project


of computer science of class XII (science).

Signature of Signature of
internal examiner external examiner

2|Page
Acknowledgment
I would like to take this opportunity to first and
foremost thank my parents for their unwavering
support and belief in me. I would also like to
thank my computer teacher for his excellent
guidance and constant encouragement, without
which this project would not have been possible.
This project has been a tremendous learning
experience for me, encompassing both
excitement and challenges that have contributed
to my personal growth. Throughout this journey,
I have witnessed substantial improvements for
which I indebted forever.

3|Page
Introduction
Jumble word game is a new way to introduce new vocabulary. It is a word
game with a clue and a set of words each of which is “Jumbled” by
scrambling. It is a game in which a jumbled word is given to the player and
player has to rearrange the characters of the word to make a correct
meaningful word to score maximum points.
If the player is not able to guess the correct word in first attempt, then the
hints will be given to them.
The computer picks a random word from a group and then creates a jumbled
version of it, where the letters are in random order. The player has to guess
the original word to win the game.

Example :-
o Jumble word: erwta
Correct word: water
o Jumble word: mehtatasmci
Correct word: mathematics
o Jumble word: keseg
Correct word: geeks

This is a one player game, at first program pick a random word from the
given database of words using choice() method of random module. After
shuffling the characters of picked word using sample method of random
module and shows the jumbled word on the screen. Current player should
give the answer; if it gives the correct answer after rearranging the
characters then players score is incremented by one otherwise not. After
quitting the game, winner is decided on the basis of scores.

4|Page
Python Overview
Python is a general-purpose high-level programming language. It is
an open-source language, released under a GPL-Compatible
license. Python Software Foundation (PSF), a non-profit
organization, holds the copy-right of python. Guido Van Rossum
conceived python in the late 1980s. It was released in 1991 at
Centrum Wiskunde & Informatica (CWI) in the Netherlands as a
successor to the ABC language. He named this language after a
popular comedy show called „Monty Python’s Flying Circus‟ (and
not after python - the snake). In the last few years, its popularity has
increased immensely. According to stackoverflow.com recent
survey, python is in the top ten most popular technologies in 2018.
It is also dynamically-typed because it carries out type-checking at
run time. It does so to make sure that the type of construct matches
what we except it to be. The distinctive feature of python is that it is
an interpreted language. The Python IDLE (Integrated Development
& Learning Environment) executes instruction one line at a time.
The python programming language is one of the richest languages.

Advantages of Python: -

o Extensible
o Portable
o Free & Open-Source
o Readable
o Embeddable
o Improved Productivity
o Simple and Easy
o Object Oriented
o Interpreted
5|Page
o Extensive Libraries

Features of Python:
o Easy: Python is a very easy to learn and understand; using this
python tutorial, any beginner can understand the basics of
python.

o Interpreted: It is interpreted (executed) line by line. This makes it


easy to test and debug.

o Object Oriented: The python programming language supports


classes and objects.

o Free and Open-Source: The language and it’s source code are
available to the public for free; there is no need to buy a costly
license.

o Portable: Since it is open source, we can run python on


windows, mac, Linux, or any other platforms. Our programs will
work without needing to the changed for every machine.

o GUI (Graphical User Interface) programming: We can use it to


develop a GUI (Graphical User Interface). One way to do this is
through ‘Tkinter’.

o Large Library: Python provides us with a large standard library.


We can use it to implement a variety of functions without
needing to reinvent the wheel every time. Just pick the code we
need and continue. This lets us to focus on other important tasks.

6|Page
MySQL Overview
MySQL is a fast, easy to use RDBMS (Relational Database Management
System) being used for many small and big businesses. MySQL is
developed, marketed and supported by MySQL AB, which is a Swedish
Company.

MySQL is becoming is so popular because of many good reasons:

o MySQL is released under an open-source language. So, we have


nothing to pay to use it.
o MySQL is a very powerful program in its own right. It handles a large
subset of the functionality of the most expensive and powerful
database packages.
o MySQL uses a standard form of the well-known SQL data language.
o MySQL works on many operating system and with many languages
including PHP, PERL, C, C++, JAVA, etc.
o MySQL works very quickly and works well even with large data sets.
o MySQL is very friendly to PHP, the most appreciated language for
web development.
o MySQL supports large databases, up to 50 million rows or more in
a table. The default file size limit for a table is 4 GB, but we can
increase this (if our operating system can handle) to a theoretical
limit of 8 million Tera-Bytes (TB).
o MySQL is customizable. The open-source GPL license allows
programmers to modify the MySQL software to fit their own
specific environments.

 For installing MySQL:

 For Python 2.7 or lower, install using pip as:

7|Page
pip install mysql.connector

 For Python 3 or higher version, install using pip3 as:


pip3 install mysql.connector

Rules of game
 If the user enters the right answer, then the user will be
rewarded by 100 points.
 If the user does not give the right answer, then the user will get
the hint of the first letter of the original word.
 And if the user enters the right answer, then the user will be
rewarded by 50 points.
 If the user does not give the right answer even after getting the
hint of the first letter of the original word, then the user will get
the hint of the last letter of the original word.
 And if the user enters the right answer, then the user will be
rewarded by 25 points.
 If the user does not give the right answer even after getting the
hint of the last letter of the original word, he/she will lose the
game.
 Hence, the game will be over.
 At last, the user will get the total points.

Advantages of Game

8|Page
1. Enjoyable methods of learning language.
2. Help to improve vocabulary.
3. Increase motivation for learning language.
4. They promote communication in English language.
5. They provide meaningful situations for practicing language.
6. Reduce anxiety related to learning and making errors.
7. Encourage spontaneous use of English language.
8. Integrate different linguistic skills.
9 . Increase learner participation in class.
10.It boosts up working memory.

Project objective
The objective of this project is to let the students apply
the programming knowledge into a real-world
situation/problem and exposed the students how
programming skills help in developing a good software.

Some key points are as follows:


o Utilizing modern software tools for programming
games.
o Apply object-oriented programming principles
effectively when developing small to medium sized
projects.
o Write effective procedural code to solve small to
medium sized problems.
o Demonstrate a breadth of knowledge in computer
science, as exemplified in the area of game
9|Page
development.
o Demonstrate ability to conduct research or applied
computer science project, requiring writing and
presentation skills which exemplify scholarly style in
computer science.

Proposed system
The aim of our project is to make a jumbled word game in python
language. This project shows that Python is simple, easy to learn syntax,
easy to use and fast to develop.
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.
Often, programmers fall in love with python because of the increased
productivity it provides. It is an open-source, simple and portable and a
small amount of code is needed to build the game.
One has to use the data management software. Many software products
working are now in markets, which have helped in making the data
easier and efficiently. Data management initially had to maintain a lot of
paper work has to be done but now software product has made our work
easier and faster. Now only this software has to be loaded on the
computer and work can be done. And MySQL has helped us a lot to
make and store data of jumbled words.
And this prevents a lot of time and money. The work becomes very easy
with the help of MySQL.
10 | P a g e
Ask jumbled
word Get word
Game
USER Interface
Reply set word
Database correct
word

system development life cycle


(sdlc)
System development life cycle as used in construction of server
appliance. The system development life cycle is a project
management technique that divides complex projects into a smaller,
more easily managed segments or phases. Segmenting projects
allow managers to verify the successful completion of project
phases before allocating resources to subsequent phases. Software
development projects typically include planning, creating,
developing, testing and maintenance. However, the phases may be
divided differently depending on the organization.

11 | P a g e
Planning

Support Analysis

Implementati
on Design

Module used
The Random Module:

This module implements pseudo-random number generators for various


distributions.
The random module has a set of methods which used in that game.

random():
o For integers, there is a uniform selection from a range.
o For a sequence, there is a uniform selection of a random element. The syntax for
using this function is random.random().

randrange():
o This returns a randomly selected element from the range created by the start,
stop and step arguments. The value of start is 0 by default. Similarly, the value of
step is 1 by default.
12 | P a g e
o The syntax for using this function is: random.randrange().

shuffle():
o This function randomly reorders the element in a list.
o It takes a sequence and returns the sequence in a random order. The syntax for
using this function is randomly.shuffle().

The String Module:

This module contains some constants, utility function and classes for string
manipulation.

The string module has a set of method in which one is used in that game.

join() :-
 The join() methods provide a flexible way to create strings from iterable objects.
It joins each element of an iterable (such as list, string and tuple) by a string
separator (the string on which the join () is called) and return the concentrated
string.
 The syntax for using this method is string.join(iterable).

mysql.connector module:

This module enables python programs to access MySQL databases, using an


API that is compliant with the Python Database API Specification v2.0 (PEP
249). It is written in pure Python and does not have any dependencies except
for the Python Standard Library.

mysql.connector module has a set of methods in which one is used in that


game.

cursor():
 A database cursor is a useful control structure of database connectivity.
Normally when we connect to a database from within a script/program, then the
query gets sent to the server, where it gets executed, and the set of records
retrieved as per query is sent over the connection.

 The syntax for using this function is mysql.connector.cursor().

13 | P a g e
connect ( ) :-
 After we have installed Python mysql.connector, we can write python scripts
using mysql.connector library that can connect to MySQL databases from
within Python.
 Next, we need to establish connection to a MySQL database using
connect() function of mysql.connector package.

 The connect() function of mysql.connector establishes connection to a MySql


database and requires four parameters, which are :

<connection-object>=mysql.connector.connect(
host=<host- name>, user=<username>, passwd=<password>
[,database=<database>])

o user is the username on MySql


o password is the password of the user
o host-name is the database server hostname or IP address
o database is optional which provides the database name of a MySql
database.

 The syntax for using this function is :- „mysql.connector.connect()‟.

execute ( ) :-
 This method is used to executes an SQL statement. Once we have created a
cursor, we can execute SQL query using execute() function with cursor object .

 The syntax for using this method is „cursor.execute()‟. For example,


 If we want to view all the records of table data which is a table in the
 database test to which we established connection, we can execute SQL query
“select * from data” by writing:
 „cursor.execute(“select * from data”)

14 | P a g e
Flowchart

15 | P a g e
16 | P a g e
Source code
import random
import mysql.connector
conn= mysql.connector.connect(host=’localhost’, user=’root,
passwd=’123’, database=’project’)
cur=conn.cursor()
print(‘Hello User !!’)
print(‘Welcome to the game of jumbled words’)
print(‘Let us start the game’)
print(‘Your jumbled words are here’)
print(‘’)
point=0
while True:
qno=random.randrange(1,81)
sql=’select*from jumbleword where WNO=’+str(qno)
cur.execute(sql)
for i in cur:
word=i[1]
orig=word
print(orig)
word=list(word)
random.shuffle(word)
wordj=join(word)
print(wordj)
ans=input(‘Enter your answer: ’)

if ans==orig:
p+=10
print(‘Correct answer’)
continue
else:
print(‘The word starts with: ’, orig[0])
ans=input(‘Enter your answer: ’)

if ans=orig:
p+=5
print(‘Correct answer’)
continue
else:
print(‘The word ends with: ’, orig[-1])
ans=input(‘Enter your answer: ’)
17 | P a g e
if ans=orig:
p+=2
print(‘Correct answer’)
continue
else:
print(‘Game over’)
print(‘Your score:’,p)
break

output screen
1. Welcome Screen of the game “Jumble Word”.

2. When the answer is correct.

18 | P a g e
3. When the user does not give right answer, then the user get
hint of the first letter of the original word

4. When the user does not give right answer even after
getting the hint of the first letter of the original word, then
the user get hint of the last letter of the original word

19 | P a g e
5. When user lose the game, then it shows “GAME OVER”.

6. When it shows final score.

20 | P a g e
Requirements
 Hardware required :-

 Modern Operating System:


 Windows 7 or 10
 Mac OS X 10.11 or higher, 64-bit
 Linux: RHEL 6/7, 64-bit
(almost all libraries also work
in Ubuntu)
 X86 64-bit CPU (Intel / AMD architecture)
 4 GB RAM
 5 GB free space
 Printer for printing project

 Software required :-

 Operating System – Windows 10


 Python 3.7.4 (tags/v3.7.4:e09359112e, Jul 8 2019, 32

19:29:22) [MSC v.1916


bit (Intel)] on win32 for execution of program
 MS word, for preparing documentation

21 | P a g e
Bibliography
1. www.wikipedia.com
2. www.slideshare.net
3. www.geeksforgeeks.org
4. www.google.com
5. Computer Science with Python
by Sumita Arora Class XIIth(Book)
6. Computer science (NCERT)

22 | P a g e
Remarks

23 | P a g e

You might also like