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

PYTHON_MP1111

The document outlines a micro-project completed by students at Thakur Polytechnic in the subject of Programming with Python, focusing on the development of a Simple Calculator. The project aims to enhance collaborative skills, critical thinking, and time management while achieving specific course outcomes such as using loops and handling user inputs. It includes details on the project's rationale, methodology, advantages, disadvantages, features, and applications, along with a sample code implementation.
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)
14 views

PYTHON_MP1111

The document outlines a micro-project completed by students at Thakur Polytechnic in the subject of Programming with Python, focusing on the development of a Simple Calculator. The project aims to enhance collaborative skills, critical thinking, and time management while achieving specific course outcomes such as using loops and handling user inputs. It includes details on the project's rationale, methodology, advantages, disadvantages, features, and applications, along with a sample code implementation.
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/ 18

Thakur Polytechnic

Department of Computer Engineering

TYCO – B
Sixth Semester (2024-2025)
Group – 33

SUBJECT: PROGRAMMING WITH PYTHON (22616)

Name Roll no.


Paras Purohit 97
Smit Patil 98
Swayam Mozar 99

GUIDED BY – MRS. NILAM PARMAR

Page | 1
Certificate
Maharashtra State Board of Technical Education

This is to certify that the following group of students roll nos. 97-99of 6th Semester of
Diploma in Computer Engineering of institute, THAKUR POLYTECHNIC
(Code:0522) has completed Micro-Project satisfactory in subject – Programming With
Python (22616) for the academic year 2024-2025 as prescribed in curriculum.

Names of the members, roll numbers & enrollment numbers:


Roll Number Name Enrollment Number
97 Paras Purohit 2205220423

98 Smit Patil 2205220424


99 Swayam Mozar 2205220425

Place: Mumbai
Date:

Subject Teacher Head of Department Principal

Institution Seal

Page | 2
ACKNOWLEDGEMENT

We feel immense pleasure in submitting this report on Simple Calculator - A basic


calculator that can perform addition, subtraction, multiplication, and division.
While submitting this report, we avail this opportunity to express our gratitude to all
those who helped us in completing this task. Heading the list with our own honorable
Principal
Dr. S. M. Ganechari who is the beginner of our inspiration.

We owe our deep gratitude and are also very thankful to our guide H.O.D Ms. Vaishali
Rane & Mrs. Nilam Parmar who has proven to be more than just a mere guide to us.
Apart from bringing to us what can be joy of successful completion of this project was
only possible due to her guidance and co-operation without which this work would never
have been completed.

Finally, we wish to express our deep sense of respect and gratitude to each and every
staff member who has helped us in many ways and also our parents who have always
bared with us in any critical situation and to all others, sparing their time and helping us
for completion of this project in whatever way they could. And lastly, we are grateful to
each other member of our group. Thank you!

Page | 3
PROPOSAL

Page | 4
Micro-Project Proposal

Subject: Programming With Python (22616)

Title: Simple Calculator

1. Aim/Benefits of the Project

A micro-project helps the students to develop skills specific to collaborative efforts, allowing
students to tackle more complex problems then they could do on their own.

• Delegate the roles and responsibilities.

• Share diverse perspectives.

• Students will develop industry-oriented course outcomes.

•To develop additional skills integral to the future, such as critical thinking and
time management.

2. Course Outcomes Addressed

a) Use loops and decision-making in Python – The Simple Calculator runs in a loop and uses
if-else

b) Apply randomization techniques – Uses a random numbers.

c) Handle user inputs and validations – Ensures valid time and sets alarm.

3. Proposed Methodology

To complete this micro-project of Advance Java Programming, the procedure that we will
follow is given below –

• Collection of Information

• Coordination with necessary ethics

• Group Discussion

• References from books and internet websites.

• Execution of project.

• Preparing report.

• Presentation of project.

Page | 5
• Project submission.

Page | 6
4. Action Plan

Sr. Details of Activity Planned Start Planned Name of


No. Date Finish Date Responsible
Team
Members

1. Information Search Paras


Purohit
2. Group Discussion All group members

3. Taking reference Smit Patil

4. Execution Swayam
Mozar
5. Compilation of reports Paras

Pur
ohi
t
6. Presentation and report All group members
submission

5. Resources Required
Sr. Name of Specifications Quantity Remarks
No Resources

1. Google Search Engine 1 Available


Chrome
Google Docs

https://docs.oracle.com/en/python/

2. Microsoft Word MS. Office 2022 1 Available

Roll Numbers Names of the Team Members


of Team
Members
97 Paras Purohit
98 Smit Patil

99 Swayam Mozar

Mrs. Nilam
Page | 7
Parmar (Subject
Teacher)

Page | 8
REPORT

Page | 9
Micro-Project Report

Subject: Programming With Python (22616)

Title: Simple Calculator


1. Rationale:
This project aims to develop a Simple Calculator using Python, focusing on providing users
with a straightforward and efficient tool for performing basic arithmetic operations.
Leveraging Python’s capabilities in mathematical computations and user input handling, the
calculator will seamlessly integrate features for addition, subtraction, multiplication, and
division. The system will ensure accuracy and user-friendliness, making it an ideal tool for
quick calculations in everyday scenarios.

2. Aim/Benefits of the Micro-Project:


A micro-project helps the students to develop skills specific to collaborative efforts,
allowing students to tackle more complex problems then they could do on their own.

•Delegate the roles and responsibilities.

•Share diverse perspectives.

•Students will develop industry-oriented course outcomes.

•To develop additional skills integral to the future, such as critical thinking and time
management.

3. Course Outcomes Achieved:

a) Use loops and decision-making in Python – The game runs in a loop and uses if-else

b) Apply randomization techniques – Uses a number.

c) Handle user inputs and validations – Ensures valid time and sets alarm.

4.Literature Review:
In the dynamic realm of technology, where artificial intelligence intersects with practical
applications, one notable innovation emerges: the Alarm Clock system. This system represents a
fusion of computational prowess and user convenience, offering a fundamental solution for time
management and waking routines. At its core, an Alarm Clock serves as a pivotal tool for punctuality
and scheduling, seamlessly blending digital functionality with everyday human routines. By
providing users with the ability to set alarms and receive timely alerts, the Alarm Clock system
Page |
10
bridges the gap between digital timekeeping and real-world engagements. The primary objective of
an Alarm Clock is to offer users a reliable means of waking up at predetermined times, thereby
facilitating smoother transitions between sleep and wakefulness. This technology has permeated
various facets of modern life, from personal morning routines to professional obligations, and has
become an indispensable feature in many households and workplaces. Behind the simplicity o
setting an alarm and receiving alerts lies a sophisticated infrastructure encompassing algorithms,
signal processing techniques, and user-friendly interfaces. Alarm Clock systems analyze user inputs,
process time-sensitive data, and orchestrate auditory or visual cues to prompt action at designated
times. As technological advancements continue to unfold, the capabilities of Alarm Clock systems
are poised for enhancement and refinement. From adaptive scheduling algorithms to personalized
alert preferences, the future of Alarm Clock technology promises greater versatility and user-centric
design. This introduction sets the stage for delving into the multifaceted landscape of Alarm Clock
systems, highlighting their significance in facilitating time management, productivity, and seamless
integration into daily routines.

5.Actual Methodology Followed:

S Details of Activity Planned Start Planned Name of


r Date Finish Date Responsible
. Team
N Members
o
.
1 Information Search Paras Purohit
.
2 Group Discussion All
. group
members
3 Taking reference Smit Patil
.
4 Execution Swayam
. Mozar
5 Compilation of reports Paras
. Purohit
6 Presentation and report All
. submission group
members

6. Actual Resources Used:

Sr. Name Specifications Quant Remar


No of ity ks
Resourc
es
1 Google Search Engine 1 Availab
. Chrome le
Google Docs

Page |
11
https://docs.oracle.com/en/
python/
2 Microso MS. Office 2022 1 Availab
. ft Word le

Page |
12
7. Output of the Microproject:

import tkinter as tk

# Function to update the input field


def click_button(value):
entry_field.insert(tk.END, value)

# Function to clear the entry field


def clear_field():
entry_field.delete(0, tk.END)

# Function to evaluate the expression


def calculate():
try:
expression = entry_field.get()
result = eval(expression) # Evaluates the mathematical expression
entry_field.delete(0, tk.END)
entry_field.insert(tk.END, result)
except Exception as e:
entry_field.delete(0, tk.END)
entry_field.insert(tk.END, "Error")

# Creating the main application window


root = tk.Tk()
root.title("Simple Calculator")
root.geometry("300x400")
root.resizable(False, False)

# Entry field for displaying input and output


entry_field = tk.Entry(root, width=16, font=('Arial', 20), justify='right', bd=10)
entry_field.grid(row=0, column=0, columnspan=4)

# Button Layout
buttons = [
('7', 1, 0), ('8', 1, 1), ('9', 1, 2), ('/', 1, 3),
('4', 2, 0), ('5', 2, 1), ('6', 2, 2), ('*', 2, 3),
('1', 3, 0), ('2', 3, 1), ('3', 3, 2), ('-', 3, 3),
('0', 4, 0), ('.', 4, 1), ('+', 4, 2), ('=', 4, 3),
]

# Adding buttons to the window


for (text, row, col) in buttons:
if text == '=':
btn = tk.Button(root, text=text, width=5, height=2, font=('Arial', 14), bg="lightgreen", command=calculate)
else:
btn = tk.Button(root, text=text, width=5, height=2, font=('Arial', 14), command=lambda t=text:
click_button(t))

btn.grid(row=row, column=col, padx=5, pady=5)

# Clear Button
clear_btn = tk.Button(root, text="C", width=5, height=2, font=('Arial', 14), bg="red", command=clear_field)
clear_btn.grid(row=5, column=0, columnspan=4, sticky="we", padx=5, pady=5)

Page |
13
# Run the application
root.mainloop(import tkinter as tk

# Function to update the input field


def click_button(value):
entry_field.insert(tk.END, value)

# Function to clear the entry field


def clear_field():
entry_field.delete(0, tk.END)

# Function to evaluate the expression


def calculate():
try:
expression = entry_field.get()
result = eval(expression) # Evaluates the mathematical expression
entry_field.delete(0, tk.END)
entry_field.insert(tk.END, result)
except Exception as e:
entry_field.delete(0, tk.END)
entry_field.insert(tk.END, "Error")

# Creating the main application window


root = tk.Tk()
root.title("Simple Calculator")
root.geometry("300x400")
root.resizable(False, False)

# Entry field for displaying input and output


entry_field = tk.Entry(root, width=16, font=('Arial', 20), justify='right', bd=10)
entry_field.grid(row=0, column=0, columnspan=4)

# Button Layout
buttons = [
('7', 1, 0), ('8', 1, 1), ('9', 1, 2), ('/', 1, 3),
('4', 2, 0), ('5', 2, 1), ('6', 2, 2), ('*', 2, 3),
('1', 3, 0), ('2', 3, 1), ('3', 3, 2), ('-', 3, 3),
('0', 4, 0), ('.', 4, 1), ('+', 4, 2), ('=', 4, 3),
]

# Adding buttons to the window


for (text, row, col) in buttons:
if text == '=':
btn = tk.Button(root, text=text, width=5, height=2, font=('Arial', 14), bg="lightgreen", command=calculate)
else:
btn = tk.Button(root, text=text, width=5, height=2, font=('Arial', 14), command=lambda t=text:
click_button(t))

btn.grid(row=row, column=col, padx=5, pady=5)

# Clear Button
clear_btn = tk.Button(root, text="C", width=5, height=2, font=('Arial', 14), bg="red", command=clear_field)
clear_btn.grid(row=5, column=0, columnspan=4, sticky="we", padx=5, pady=5)

# Run the application


root.mainloop()
Page |
14
Output:

Page |
15
8.Advantages

 Efficiency: A simple calculator quickly performs arithmetic operations, reducing the time
required for manual calculations.
 Accuracy: Minimizes human errors by providing precise results for addition, subtraction,
multiplication, and division.
 User-Friendly: Designed with an intuitive interface, making it accessible to users of all ages and
technical backgrounds.
 Portability: Can be implemented as a lightweight software tool or an application, making it easily
accessible on various devices.
 Versatility: Supports multiple arithmetic operations, making it useful for students, professionals,
and general users.

9.Disadvantages

 Limited Functionality: A basic calculator may not support advanced mathematical functions such as
trigonometry, logarithms, or graph plotting.
 Dependency: Users may become reliant on calculators for simple calculations, reducing mental arithmetic
skills.
 Input Errors: Mistyped inputs can lead to incorrect results if there is no error-handling mechanism.
 No Memory Functionality: Unlike scientific calculators, a simple calculator may lack features like
memory storage for previous calculations.
 Device Dependence: Requires a functional device to operate, making it unusable if the device is
unavailable or non-operational.

10.Features of the Simple Calculator

 Basic Arithmetic Operations: Supports addition, subtraction, multiplication, and division.


 User Input Handling: Allows users to enter numbers and select an operation for computation.
 Error Handling: Prevents issues like division by zero or invalid inputs.
 Interactive Interface: Provides clear input prompts and displays output neatly.
 Continuous Calculation Mode: Enables users to perform multiple calculations without restarting the
program.
 Portability: Can be implemented as a lightweight command-line application or a simple GUI-based tool.

11.Skills Developed/Learning Outcomes

Page |
16
 Problem-Solving Skills: Understanding the logic behind mathematical operations and implementing them
in Python.
 Input Validation: Ensuring user inputs are correctly formatted and safe for processing.
 Decision-Making & Loops: Utilizing if-else conditions and loops for user interaction and repeated
calculations.
 Error Handling: Learning to manage exceptions like invalid inputs or division by zero.

12.Applications of the Micro-Project

 Educational Purposes: A useful tool for students to perform quick arithmetic calculations.
 Office and Professional Use: Helps in basic financial calculations, data analysis, and daily computations.
 Embedded Systems: Can be integrated into small devices such as digital clocks, cash registers, or POS
systems.
 Mobile & Desktop Applications: Serves as a foundation for building more advanced calculators with
graphical interfaces.

Conclusion:

The Smart Calculator serves as an essential tool for performing quick and accurate mathematical
calculations, enhancing efficiency in various fields. By integrating technology with human
convenience, smart calculators have become indispensable in education, finance, and daily
problem-solving. They facilitate precision, productivity, and seamless execution of arithmetic
operations, making them valuable assets for students, professionals, and general users alike.

Bibliography

1. Python Documentation – Reference for loops, conditions, and random module.


2. W3Schools Python Tutorials – Guide for input handling and decision-making.
3. GeeksforGeeks Python Programming – Explanation of randomization and game logic.
4. Real-World Betting Systems – Understanding probability and risk in betting applications.

Names of Team Members with Roll Nos.

Roll Numbers Name of the Team Members


100 Siddhi Pawar
101 Tirtha Pawar
102 Rahul Kokare

Mrs. Nilam Parmar (Subject


Page |
17
Teacher)

Page |
18

You might also like

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy