Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
0% found this document useful (0 votes)
2 views

Python_Microproject[by Sahil]

The document is a micro project report on developing a scientific calculator using Python, specifically utilizing the Tkinter library for its graphical user interface. It outlines the project's aim, methodology, and resources required, along with a literature review on the evolution of scientific calculators and the effectiveness of Python in this domain. The project serves as an educational tool for students and professionals, emphasizing the importance of error handling and modular programming.

Uploaded by

sahilchavhan121
Copyright
© © All Rights Reserved
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
2 views

Python_Microproject[by Sahil]

The document is a micro project report on developing a scientific calculator using Python, specifically utilizing the Tkinter library for its graphical user interface. It outlines the project's aim, methodology, and resources required, along with a literature review on the evolution of scientific calculators and the effectiveness of Python in this domain. The project serves as an educational tool for students and professionals, emphasizing the importance of error handling and modular programming.

Uploaded by

sahilchavhan121
Copyright
© © All Rights Reserved
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 15

A MICRO PROJECT REPORT ON

“Scientific Calculator”

In partial fulfillment of the requirement for the Diploma in Computer Engineering


(6th Semester)

In the subject of:

Programming With Python (22616)

Submitted by:
Ghananil K. Shirpurkar
Tushar M. Deshpande
Sahil R. Chavhan
Vedika R. Dahake
Mohd. Saqlain S. Raza

Submitted to:

Maharashtra State Board of Technical Education, Mumbai (M.S.)

Under the guidance of:


Mr. Mohan P. Ganorkar

Lecture In,Department of Computer Engineering

Government Polytechnic Arvi, Dist.-


Wardha (2024-2025)
Government Polytechnic, Arvi
Department of Computer Engineering

CertifiCate
This is to certify, that the student whose name is mentioned below of Fifth Semester of Diploma in
Computer Engineering has satisfactorily completed the Micro-Project entitled Scientific Calculator.
in the subject of Programming With Python (22616) for the academic year 2024-2025 as prescribed
in MSBTE curriculum.

Roll No. Student Name Enrollment No. Seat No.

51 Shirpurkar Ghananil Kusumakar 2201320320

50 Deshpande Tushar Milind 2201320319

48 Chavhan Sahil Ravindra 2201320317

18 Dahake Vedika Raju 2201320230

02 Raza Mohammad Saqlain Mohammad Shahid 2101320064

Subject Teacher Head of Department Principal

Place: Arvi
Date: / / 2025
DeClaration

We under signed hereby declare that the Micro-Project report entitled “Scientific Calculator”
contents is the outcome of our own literature survey. We further declare that the contents of this
report are properly citied and well acknowledge. This present report is not submitted to any other
examination of this or any other institute for the award of any diploma.

(Signature)

1) G.K.Shirpurkar

2) T. M. Deshpande

3) S.R. Chavhan

4) V.R. Dahake

5) S.S. Raza

Place: Arvi

Date: / /

2025
PART A – Micro-Project Proposal
“Scientific Calculator”

1. Brief Introduction:

A scientific calculator is an essential computational tool designed to handle


both basic and advanced mathematical operations. Unlike a standard calculator, it supports
complex calculations such as trigonometric functions (sine, cosine, tangent), logarithmic
operations, exponential calculations, and factorial computations. The main goal of this
project is to develop a feature-rich, efficient, and user-friendly scientific calculator using
Python. Python, being a high-level programming language, offers extensive libraries that
simplify mathematical computations and graphical user interface (GUI) development. This
project primarily utilizes the Tkinter library to create an interactive and intuitive GUI, while
the math module facilitates accurate mathematical operations. By integrating these
technologies, the calculator will be capable of handling a wide range of operations suitable
for students, engineers, and researchers.

The development process of this project involves designing a well-structured


graphical user interface with buttons and display screens to ensure seamless user
interaction. The interface will include numerical keys, arithmetic operators, and additional
scientific functions such as logarithms, power calculations, square roots, and trigonometric
operations. Each function will be implemented using Python’s event-driven programming,
where button clicks trigger the corresponding mathematical operations. The Tkinter
framework allows for customization of the layout, making the calculator visually appealing
and easy to navigate. Furthermore, exception handling mechanisms will be incorporated to
manage errors like division by zero and invalid inputs, ensuring robustness and reliability.
The use of modular programming will enhance code maintainability, making future updates
or modifications more manageable.
2. Aim:

The aim of this micro project is to develop a Python-based scientific calculator that
performs arithmetic, trigonometric, logarithmic, and exponential operations using the
Tkinter library for a user-friendly GUI. It ensures accuracy, efficiency, and error handling
for reliable computations. The project follows an event-driven approach, making it
interactive and scalable for academic and professional use.

3. 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.

\
4. Literature Review:

The development of scientific calculators has evolved significantly over the years,
from basic handheld devices to software-based implementations. Traditional scientific
calculators, such as Casio and Texas Instruments models, rely on embedded hardware and
firmware to execute mathematical operations efficiently. However, with the advancement of
programming languages like Python, software-based calculators have become more
accessible and customizable. Various studies highlight the role of Python’s math module in
handling complex computations, including trigonometric, logarithmic, and exponential
functions. Research also emphasizes the effectiveness of Graphical User Interface (GUI)
development using the Tkinter library, which allows for a structured and interactive approach
to designing software-based calculators. By leveraging Python’s flexibility and built-in
mathematical functions, modern scientific calculators can provide greater accuracy and ease
of use compared to traditional hardware-based counterparts.
Several academic studies and research papers focus on the importance of GUI-based
applications in enhancing user experience and usability. The Tkinter framework, which is
widely used for Python GUI applications, has been recognized for its simplicity and
efficiency in developing interactive tools. Compared to other GUI frameworks like PyQt and
Kivy, Tkinter is lightweight and requires minimal dependencies, making it an ideal choice for
micro projects and desktop applications. Additionally, literature on event-driven
programming highlights how button-based input systems improve responsiveness and user
engagement. Studies suggest that implementing error-handling techniques in calculators—
such as managing division by zero, invalid inputs, and undefined mathematical operations—
significantly enhances reliability. Research also indicates that modular programming
techniques help maintain code efficiency, allowing for easier debugging and future upgrades
to include additional mathematical functions.

The integration of scientific computing in Python-based projects has also been a focus
of modern research. Studies in computational mathematics emphasize the use of libraries
such as NumPy and SymPy for symbolic and numerical calculations, which can further
enhance the capabilities of scientific calculators. Moreover, research on cross-platform
development suggests that Python-based applications can be extended beyond desktop
environments to web-based and mobile platforms using frameworks like Flask, Django, and
Kivy. The potential for further development in this field is vast, with studies exploring how
artificial intelligence (AI) and machine learning (ML) can be incorporated to automate and
optimize complex mathematical problem-solving. Overall, the literature supports the
feasibility and effectiveness of using Python for scientific calculator development,
reinforcing its practicality for educational and professional use.

5. Proposed Methodology :

 Understand the topic given to us.


 Discuss about the topic with group members.
 Divide the topic throughout each member of the group.
 Collected the information from member and verify from our lecturer.
 Prepared the main report of our micro project.

6. Resources Required
Sr.no Name of Resource/Material Specification Quantity Remark
1. Computer (i3-i5) Preferable 1 -
Ram minimum 2
GB
2. Operating System Windows 11 1 -
3. Software MS-Word ,VS Code 1 -
7. Action Plan

Sr.no Details of Activity Planned Start Planned Name of


Date Finish Date Responsible
Team
Member
1. Research and gather 02/01/2025 06/01/2025 All
information on Scientific
calculator
2. Create a project plan that 06/01/2025 22/01/2025 All
outlines the project
objectives
3. Create the proposal and 23/01/2025 12/02/2025 All
check it.
4. Distributes works with 12/02/2025 14/02/2025 All
group member
5. Begin drafting the project 17/02/2025 04/03/2025 All
report
6. Prepare for the final 05/03/2025 24/03/2025 All
presentation and report.
7. Submit the final project All
report presentation

8. Group Members
Roll No. Student Name Enrollment No. Signature

51 G.K.Shirpurkar 2201320320

50 T. M. Deshpande 2201320319

48 S.R. Chavhan 2201320317

18 V.R. Dahake 2201320230

02 S.S. Raza 2101320064

PART B – Micro-Project Report


“Scientific Calculator”

1.Rational:

In today’s digital era, scientific calculators play a crucial role in education,


engineering, and research by enabling complex mathematical computations. Traditional
handheld calculators, while effective, have limitations in terms of customization, user interface,
and advanced computational capabilities. With the increasing adoption of software-based tools,
developing a Python-powered scientific calculator offers greater flexibility, accuracy, and ease
of use. Python’s math module provides built-in functions for arithmetic, trigonometric,
logarithmic, and exponential operations, ensuring precise calculations. Additionally, integrating
a Graphical User Interface (GUI) using Tkinter enhances usability by offering an intuitive and
interactive platform, making mathematical problem-solving more efficient and accessible.

This project is particularly relevant for students, researchers, and professionals


who require a lightweight yet powerful computational tool. Unlike web-based or hardware-
dependent alternatives, a Python-based desktop calculator allows for offline usage,
customization, and scalability. Implementing error-handling mechanisms ensures robustness,
preventing issues such as division by zero or invalid input errors. Furthermore, the project
serves as an excellent learning opportunity in Python programming, GUI development, and
event-driven programming.

2. 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.

\
3. Literature Review:
The development of scientific calculators has evolved significantly over the years,
from basic handheld devices to software-based implementations. Traditional scientific
calculators, such as Casio and Texas Instruments models, rely on embedded hardware and
firmware to execute mathematical operations efficiently. However, with the advancement of
programming languages like Python, software-based calculators have become more
accessible and customizable. Various studies highlight the role of Python’s math module in
handling complex computations, including trigonometric, logarithmic, and exponential
functions. Research also emphasizes the effectiveness of Graphical User Interface (GUI)
development using the Tkinter library, which allows for a structured and interactive approach
to designing software-based calculators. By leveraging Python’s flexibility and built-in
mathematical functions, modern scientific calculators can provide greater accuracy and ease
of use compared to traditional hardware-based counterparts.
Several academic studies and research papers focus on the importance of GUI-based
applications in enhancing user experience and usability. The Tkinter framework, which is
widely used for Python GUI applications, has been recognized for its simplicity and
efficiency in developing interactive tools. Compared to other GUI frameworks like PyQt and
Kivy, Tkinter is lightweight and requires minimal dependencies, making it an ideal choice for
micro projects and desktop applications. Additionally, literature on event-driven
programming highlights how button-based input systems improve responsiveness and user
engagement. Studies suggest that implementing error-handling techniques in calculators—
such as managing division by zero, invalid inputs, and undefined mathematical operations—
significantly enhances reliability. Research also indicates that modular programming
techniques help maintain code efficiency, allowing for easier debugging and future upgrades
to include additional mathematical functions.
The integration of scientific computing in Python-based projects has also been a focus
of modern research. Studies in computational mathematics emphasize the use of libraries
such as NumPy and SymPy for symbolic and numerical calculations, which can further
enhance the capabilities of scientific calculators. Moreover, research on cross-platform
development suggests that Python-based applications can be extended beyond desktop
environments to web-based and mobile platforms using frameworks like Flask, Django, and
Kivy. The potential for further development in this field is vast, with studies exploring how
artificial intelligence (AI) and machine learning (ML) can be incorporated to automate and
optimize complex mathematical problem-solving. Overall, the literature supports the
feasibility and effectiveness of using Python for scientific calculator development,
reinforcing its practicality for educational and professional use.
4. Actual Methodology Followed:

o First, I think about topic and then decided the topic of project.

o Did some research on the selected topic.

o We focused on the materials we needed, as well as gathered information about Scientific Calculator.

o Collecting some pictures about network hacking for describing much better and easily.

o Prepared a report and Checked for any further changes to be done in the project.

o Created final report of the project and submitted to the teacher.

5. Actual Resources Used:


Sr.no Name of Resource/Material Specification Quantity Remark
1. Computer Laptop i5 ,8GB 1 -
Ram , 512 GB SSD
2. Operating System Windows 11 1 -
3. Software MS-Word ,VS Code 1 -
PROGRAM:
import tkinter as tk
import math

def evaluate_expression(expression):
try:
result = str(eval(expression, {"__builtins__": None}, math.__dict__))
return result
except Exception as e:
return "Error"

def on_button_click(char):
if char == "=":
result = evaluate_expression(entry.get())
entry.delete(0, tk.END)
entry.insert(tk.END, result)
elif char == "C":
entry.delete(0, tk.END)
elif char == "Del":
current_text = entry.get()
entry.delete(0, tk.END)
entry.insert(tk.END, current_text[:-1])
else:
entry.insert(tk.END, char)

root = tk.Tk()
root.title("Scientific Calculator")
root.configure(bg="#2b2b2b")

entry = tk.Entry(root, width=30, borderwidth=5, font=('Helvetica', 18),


bg="#e0e0e0")
entry.grid(row=0, column=0, columnspan=6, padx=10, pady=10)

buttons = [
('7', "#d3d3d3", 1, 0), ('8', "#d3d3d3", 1, 1), ('9', "#d3d3d3", 1, 2), ('/',
"#87ceeb", 1, 3), ('sin', "#87ceeb", 1, 4), ('cos', "#87ceeb", 1, 5),
('4', "#d3d3d3", 2, 0), ('5', "#d3d3d3", 2, 1), ('6', "#d3d3d3", 2, 2), ('*',
"#87ceeb", 2, 3), ('tan', "#87ceeb", 2, 4), ('log', "#87ceeb", 2, 5),
('1', "#d3d3d3", 3, 0), ('2', "#d3d3d3", 3, 1), ('3', "#d3d3d3", 3, 2), ('-',
"#87ceeb", 3, 3), ('sqrt', "#87ceeb", 3, 4), ('^', "#87ceeb", 3, 5),
('0', "#d3d3d3", 4, 0), ('.', "#d3d3d3", 4, 1), ('=', "#87ceeb", 4, 2), ('+',
"#87ceeb", 4, 3), ('(', "#87ceeb", 4, 4), (')', "#87ceeb", 4, 5),
('C', "#f44336", 5, 0), ('Del', "#f44336", 5, 1)
]

for (text, color, row, col) in buttons:


tk.Button(root, text=text, padx=20, pady=20, font=('Helvetica', 14), bg=color,
fg="#000000",
command=lambda char=text: on_button_click(char)).grid(row=row,
column=col, padx=5, pady=5, sticky="nsew")
for i in range(6):
root.grid_rowconfigure(i, weight=1)
root.grid_columnconfigure(i, weight=1)

root.mainloop()

6. Outputs of the Micro-project:


7. Skill Developed:

1. We gained knowledge about Computer Networking.


2. Communication really go hand in glove with leadership.
3. How to create a project schedule.
4. How to manage time.
5. Decision making skill.
6. Planning and strategy skill.
· Conclusion :
The Scientific Calculator project successfully demonstrates the implementation
of Python and Tkinter to create a user-friendly and efficient computational tool. By integrating
various mathematical functions such as arithmetic operations, trigonometric calculations,
logarithmic computations, and factorial evaluations, the calculator provides an enhanced user
experience for students, professionals, and researchers. The use of error handling mechanisms
ensures that invalid inputs are properly managed, improving the reliability of the application.

This project highlights the power of Python for GUI-based applications, showcasing the
ease of designing an interactive and functional interface using Tkinter. The modular and event-
driven programming approach allows for scalability and future enhancements, such as the
inclusion of graph plotting, unit conversions, and AI-powered calculations. The successful
completion of this project serves as a stepping stone for further advancements in scientific
computing and software development.

· References:

o https://www.geeksforgeeks.org/scientific-gui-calculator-using-tkinter-in-python/
o https://medium.com/@rahulmallah785671/build-your-own-scientific-calculator-with-python-
a-step-by-step-guide-15bbf0419325
o https://github.com/kostasthanos/Tkinter-Calculator
o https://www.youtube.com/watch?v=B5g-gnHlLIA

You might also like