PWP Chetan

Download as pdf or txt
Download as pdf or txt
You are on page 1of 11

MAHARASHTRA STATE BOARD OF TECHNICAL

EDUCATION

SHRI H. H. J. B POLYTECHNIC,
CHANDWAD-423101 (Nashik)

MICRO PROJECT
Academic year 2023-24

TITLE OF PROJECT
Finding typing speed and accuracy of text in text editor

Program: Computer Technology Program Code: CM

Course: Programming With Python Course code: 22616


Teacher Evaluation Sheet
Name of Student: Mahajan Chetan Prashant
Enrollment No: 2100790161
Name of Program: Computer Technology Semester:-VI
Course Title: Programming With Python (PWP) Code: -22616
Title of the Micro Project: Finding typing speed and accuracy of text in text editor

Course Outcomes Achieved:-


a) CO-a Display message on screen using Python script on IDE.
b) CO-b Develop Python Program to demonstrate use of operators.
c) CO-c Perform operations on data structures in Python .
d) CO-d Develop functions for given problem.
e) CO-e Design classes for given problem.
f) CO-f Handle exception.
Evaluation as per Suggested Rubric for Assessment of Micro-Project:
Sr.
Characteristic to be Poor Average Good Excellent
No.
assessed (Marks 1-3) (Marks 4-5) (Marks 6 - 8) (Marks 9-10)
(A) Process and Product Assesssment (Convert above total marks out of 6 marks)
1 Relevance to the Course
Literature Survey /
2
Information Collection
Completion of the Target as
3
per project proposal
Analysis of data and
4
representation
5 Quality of Prototype / Model
6 Report Preparation
(B) Individual Presentation / Viva (Convert above total marks out of 4 marks)
8 Presentation
9 Viva
Micro – Project Evaluation Sheet:
Process Assessment Product Assessment
Part Project Part Individual Total
A – project Methodology B – Project Presentation / Marks 10
Name of Student Proposal (2 marks) Report / Working Viva (4 marks)
(2 marks) Model(2 marks)

Mahajan Chetan Prashant


Comments / Suggestions about team work / leadership / inter – personal communication (if any)

Any Other Comment

Name and designation of the faculty Member: Mrs. S. N. Gosavi Signature


MAHARASHTRA STATE BOARD OF TECHNICAL EDUCATION

Sr.No. Name of Student Roll No Enrollment No Seat No


1. Mahajan Chetan Prashant 07 2100790161

CERTIFICATE
This is to certify 1) Mahajan Chetan Prashant

of 6th Semester of Diploma in Computer Technology of Institute, SHHJB POLYTECHNIC,


CHANDWAD (Code: 0079) has completed the Micro-Project satisfactorily in Subject
Enterpreneurship Development (22032) for the academic year 2023- 2024 as prescribed in the
curriculum.

Place: CHANDWAD

Date: / /2024

Subject Teacher Head of the Department Principal


(Mrs. S.N.Gosavi) (Mr.P.R.Sali) (Dr. V.A.Wankhede)
INDEX

SR_NO. CONTENT PAGE NO.

Part A

1.0 Brief Introduction 1

2.0 Aim of Micro Project 1

3.0 Action Plan 2

4.0 Resources Required 2

Part B

1.0 Brief Description 3

2.0 Aim of Micro Project 3

3.0 Course Outcome Integrated 3

4.0 Actual Procedure Followed 3

5.0 Actual Resource Used 3

6.0 Outputs of the Micro-projects 6

7.0 Skill Developed 6

8.0 Applications of this Microproject 7


PART A-Plan

Title of micro-project: Finding typing speed and accuracy of text in text editor

1.0 Aim/Benefits of the Micro-Project-


To find out the typing speed and accuracy of the text

2.0 Course Outcomes Addressed-

CO-a Display message on screen using Python script on IDE.


CO-b Develop Python Program to demonstrate use of operators.
CO-c Perform operations on data structures in Python .
CO-d Develop functions for given problem.
CO-e Design classes for given problem.
CO-f Handle exception.

3.0 Proposed Methodology-

 Discuss on various topics and finalize one.


 Discuss with guide about micro project content
 Prepare a proposal of project
 Distribute the work among team members.
 Collect the information about topic.
 Prepare detail document about topic.
 Prepare report of project.
 Verify the project from guide
 Do corrections as per guide suggestions if any
 Finally submit the Micro project to guide.
4.0 Action Plan-

Planned Start Planned Finish


Sr no. Details of activity
Date Date
1. Finalization of topic 29/02/2024 2/03/2024
2. Preparation of Abstract 3/03/2024 5/03/2024
3. Collection of data 08/03/2024 12/03/2024
4. Preparation of concept 17/03/2024 21/03/2024
5. Seminar / Presentation 29/03/2024 29/03/2024
6. Submission of Micro Project 02/04/2024 05/04/2024

5.0 Resources Required:

Sr.No Name of Resource/Material Specification Quantity Remarks


1. Computer (Desktop/Laptop) i3,RAM 2GB 1
2. Microsoft office word 2010 1
3. Websites https://www.geeksfo 1
rgeeks.org/how-to-
test-typing-speed-
using-python/
4. Softwares IDLE 1

2
PART B-Plan

Title of micro-project:

Finding typing speed and accuracy of text in text editor

1.0 Brief Description:

The main purpose of the project is to find out the typing speed and accuracy of text entered in
the text editor. We can also define the text at run time or can also define the text prior. We can
also import various classes for the controls used in the editor.

2.0 Aims/Benefits of Micro Project:

To measure typing speed and accuracy of text using Python, you can create a simple program
that calculates the time taken to type a specific text and compares it with the actual time taken

3.0 Course Outcomes Achieved:

CO602.1: Display message on screen using Python script on IDE


CO602.4: Develop Function for given problem.
CO602.5: Design classes for given problem.

4.0 Actual Methodology/Procedure Followed:

 Discuss on various topics and finalize one.


 Discuss with guide about micro project content
 Prepare a proposal of project
 Distribute the work among team members.
 Collect the information about topic.
 Prepare detail document about topic.
 Prepare report of project.
 Verify the project from guide
 Do corrections as per guide suggestions if any
 Finally submit the Micro project to guide.

5.0 Literature Review:

Referred the book “Python: The complete reference” for defining various functions and classes. Like
created a user-defined class which contain various functions for calculating the speed and for finding
the accuracy, also it contain the function which defines the controls used in the editor. Also referred
“Javatpoint” for importing built-in modules for referring controls/widgets used for designing the text
editor. Used modules like Thinter which provides classes which allow the display, positioning and
control of widgets. Time, this module provides various functions to manipulate time values. Module
difflib – helpers for computing deltas between objects.

4
5.0 Actual Resources Used:

Sr.No Name of Resource/Material Specification Quantity Remarks


1. Computer (Desktop/Laptop) i3,RAM 2GB 1
2. Microsoft office word 2010 1
3. Websites https://www.geeksfo 1
rgeeks.org/how-to-
test-typing-speed-
using-python/
4. Softwares IDLE 1

6.0 Output of the Micro-Project:


Code:
from tkinter import *
from tkinter import ttk
import time
import difflib
import random
class
MainWindow:

def __init__(self, root):


self.text = ["The greatest glory in living lies not in never falling, but in rising every time we fall.",
"The way to get started is to quit talking and begin doing.",
"Your time is limited, so don't waste it living someone else's life. Don't be trapped by dogma
– which is living with the results of other people's thinking.",
"If life were predictable it would cease to be life, and be without flavor.",
"If you look at what you have in life, you'll always have more. If you look at what you don't have
in life, you'll never have enough.",
"If you set your goals ridiculously high and it's a failure, you will fail above everyone else's
success.",
"Life is what happens when you're busy making other plans.",
"One day the people that don’t even believe in you will tell everyone how they met you.",
"The true meaning of life is to plant trees, under whose shade you do not expect to sit.",
"The quick brown fox jumps over the lazy dog."]
self.speed = 0 self.accuracy = 0 self.time_start = 0
self.time_end = 0 root.title("Python GUI")
root.minsize(800, 500) for row in range(5):
root.grid_rowconfigure(row, weight=1)
for col in range(3):
root.grid_columnconfigure(col, weight=1)
self.label_text = Label( root, text="Welcome to typing speed
calculator", wraplength=500) self.label_text.grid(row=0, column=0,
columnspan=3, sticky="nsew")
self.user_text = Text(root) self.user_text.grid(column=0, row=1,
columnspan=3, sticky="nsew")

self.btn_start = Button(root, text="Start/Restart", command=self.start)


self.btn_start.grid(column=0, row=2, columnspan=1, sticky="nsew") self.btn_stop =
Button(root, text="Stop", command=self.stop) self.btn_stop.grid(column=1, row=2,
columnspan=1, sticky="nsew") self.btn_newtext = Button(root, text="New Text",
command=self.new_text) self.btn_newtext.grid(column=2, row=2, columnspan=1,
sticky="nsew")

self.label_speed = Label(
root, text=f"Your typing speed is {self.speed} WPM")
self.label_speed.grid(row=3, column=0, columnspan=3, sticky="nsew")

self.label_accuracy = Label(
root, text=f"Your typing accuracy is {self.speed} %")
self.label_accuracy.grid(row=4, column=0, columnspan=3, sticky="nsew")

def start(self):
self.time_start = time.time()

def stop(self):
self.time_end = time.time()
words = self.label_text.cget("text").split(' ') self.speed =
round(len(words)/((self.time_end - self.time_start)/60))
self.label_speed.config(
text=f"Your typing Speed is {self.speed} WPM") self.accuracy =
round(difflib.SequenceMatcher(None, self.label_text.cget(
"text"), self.user_text.get("1.0", 'end-1c')).ratio()*100)
self.label_accuracy.config( text=f"Your typing
accuracy is {self.accuracy} %")

def new_text(self):
self.label_text.config(
text=self.text[random.randint(0, len(self.text)-1)])
self.user_text.delete('1.0', END)

def main():
root = Tk()
myapp =
MainWindo
w(root)
root.mainloop()

if __name__ == "__main__": main()


7.0 Skill Developed:

1. Communication Skills.
2. Working in a team, time management, group discussion.
3. Developed the skill of importing packages and defining the functions in python.
8.0 Applications of this Microproject:

1. In offices to take an employee`s typing test.


2. In commercial text editors.
3. For schools and colleges for students to detect there speed.
4. For programmers and designed for building an applications.

You might also like