# Basic calculator program using Python

• Difficulty Level : Easy
• Last Updated : 16 May, 2022

Here we will be making a simple calculator in which we can perform basic arithmetic operations like addition, subtraction, multiplication, or division.

Example 1) GUI of a Calculator Which will help to add, subtract , Multiply and divide

## Python

 `# pip install tkinter``import` `tkinter as tk``import` `tkinter.messagebox``from` `tkinter.constants ``import` `SUNKEN` `window ``=` `tk.Tk()``window.title(``'Claculator-GeeksForGeeks'``)``frame ``=` `tk.Frame(master``=``window, bg``=``"skyblue"``, padx``=``10``)``frame.pack()``entry ``=` `tk.Entry(master``=``frame, relief``=``SUNKEN, borderwidth``=``3``, width``=``30``)``entry.grid(row``=``0``, column``=``0``, columnspan``=``3``, ipady``=``2``, pady``=``2``)`  `def` `myclick(number):``    ``entry.insert(tk.END, number)`  `def` `equal():``    ``try``:``        ``y ``=` `str``(``eval``(entry.get()))``        ``entry.delete(``0``, tk.END)``        ``entry.insert(``0``, y)``    ``except``:``        ``tkinter.messagebox.showinfo(``"Error"``, ``"Syntax Error"``)`  `def` `clear():``    ``entry.delete(``0``, tk.END)`  `button_1 ``=` `tk.Button(master``=``frame, text``=``'1'``, padx``=``15``,``                     ``pady``=``5``, width``=``3``, command``=``lambda``: myclick(``1``))``button_1.grid(row``=``1``, column``=``0``, pady``=``2``)``button_2 ``=` `tk.Button(master``=``frame, text``=``'2'``, padx``=``15``,``                     ``pady``=``5``, width``=``3``, command``=``lambda``: myclick(``2``))``button_2.grid(row``=``1``, column``=``1``, pady``=``2``)``button_3 ``=` `tk.Button(master``=``frame, text``=``'3'``, padx``=``15``,``                     ``pady``=``5``, width``=``3``, command``=``lambda``: myclick(``3``))``button_3.grid(row``=``1``, column``=``2``, pady``=``2``)``button_4 ``=` `tk.Button(master``=``frame, text``=``'4'``, padx``=``15``,``                     ``pady``=``5``, width``=``3``, command``=``lambda``: myclick(``4``))``button_4.grid(row``=``2``, column``=``0``, pady``=``2``)``button_5 ``=` `tk.Button(master``=``frame, text``=``'5'``, padx``=``15``,``                     ``pady``=``5``, width``=``3``, command``=``lambda``: myclick(``5``))``button_5.grid(row``=``2``, column``=``1``, pady``=``2``)``button_6 ``=` `tk.Button(master``=``frame, text``=``'6'``, padx``=``15``,``                     ``pady``=``5``, width``=``3``, command``=``lambda``: myclick(``6``))``button_6.grid(row``=``2``, column``=``2``, pady``=``2``)``button_7 ``=` `tk.Button(master``=``frame, text``=``'7'``, padx``=``15``,``                     ``pady``=``5``, width``=``3``, command``=``lambda``: myclick(``7``))``button_7.grid(row``=``3``, column``=``0``, pady``=``2``)``button_8 ``=` `tk.Button(master``=``frame, text``=``'8'``, padx``=``15``,``                     ``pady``=``5``, width``=``3``, command``=``lambda``: myclick(``8``))``button_8.grid(row``=``3``, column``=``1``, pady``=``2``)``button_9 ``=` `tk.Button(master``=``frame, text``=``'9'``, padx``=``15``,``                     ``pady``=``5``, width``=``3``, command``=``lambda``: myclick(``9``))``button_9.grid(row``=``3``, column``=``2``, pady``=``2``)``button_0 ``=` `tk.Button(master``=``frame, text``=``'0'``, padx``=``15``,``                     ``pady``=``5``, width``=``3``, command``=``lambda``: myclick(``0``))``button_0.grid(row``=``4``, column``=``1``, pady``=``2``)` `button_add ``=` `tk.Button(master``=``frame, text``=``"+"``, padx``=``15``,``                       ``pady``=``5``, width``=``3``, command``=``lambda``: myclick(``'+'``))``button_add.grid(row``=``5``, column``=``0``, pady``=``2``)` `button_subtract ``=` `tk.Button(``    ``master``=``frame, text``=``"-"``, padx``=``15``, pady``=``5``, width``=``3``, command``=``lambda``: myclick(``'-'``))``button_subtract.grid(row``=``5``, column``=``1``, pady``=``2``)` `button_multiply ``=` `tk.Button(``    ``master``=``frame, text``=``"*"``, padx``=``15``, pady``=``5``, width``=``3``, command``=``lambda``: myclick(``'*'``))``button_multiply.grid(row``=``5``, column``=``2``, pady``=``2``)` `button_div ``=` `tk.Button(master``=``frame, text``=``"/"``, padx``=``15``,``                       ``pady``=``5``, width``=``3``, command``=``lambda``: myclick(``'/'``))``button_div.grid(row``=``6``, column``=``0``, pady``=``2``)` `button_clear ``=` `tk.Button(master``=``frame, text``=``"clear"``,``                         ``padx``=``15``, pady``=``5``, width``=``12``, command``=``clear)``button_clear.grid(row``=``6``, column``=``1``, columnspan``=``2``, pady``=``2``)` `button_equal ``=` `tk.Button(master``=``frame, text``=``"="``, padx``=``15``,``                         ``pady``=``5``, width``=``9``, command``=``equal)``button_equal.grid(row``=``7``, column``=``0``, columnspan``=``3``, pady``=``2``)` `window.mainloop()`

Output:

Example 2: Create a simple calculator which can perform basic arithmetic operations like addition, subtraction, multiplication, or division depending upon the user input. Approach :

• User chooses the desired operation. Options 1, 2, 3, and 4 are valid.
• Two numbers are taken and an if…elif…else branching is used to execute a particular section.
• Using functions add(), subtract(), multiply() and divide() evaluate respective operations.
```Please select operation -
1. Add
2. Subtract
3. Multiply
4. Divide
Select operations form 1, 2, 3, 4 : 1
Enter first number : 20
Enter second number : 13
20 + 13 = 33```

## Python

 `# Python program for simple calculator` `# Function to add two numbers``def` `add(num1, num2):``    ``return` `num1 ``+` `num2` `# Function to subtract two numbers``def` `subtract(num1, num2):``    ``return` `num1 ``-` `num2` `# Function to multiply two numbers``def` `multiply(num1, num2):``    ``return` `num1 ``*` `num2` `# Function to divide two numbers``def` `divide(num1, num2):``    ``return` `num1 ``/` `num2` `print``("Please select operation ``-``\n" \``        ``"``1.` `Add\n" \``        ``"``2.` `Subtract\n" \``        ``"``3.` `Multiply\n" \``        ``"``4.` `Divide\n")`  `# Take input from the user``select ``=` `int``(``input``("Select operations form ``1``, ``2``, ``3``, ``4` `:"))` `number_1 ``=` `int``(``input``("Enter first number: "))``number_2 ``=` `int``(``input``("Enter second number: "))` `if` `select ``=``=` `1``:``    ``print``(number_1, "``+``", number_2, "``=``",``                    ``add(number_1, number_2))` `elif` `select ``=``=` `2``:``    ``print``(number_1, "``-``", number_2, "``=``",``                    ``subtract(number_1, number_2))` `elif` `select ``=``=` `3``:``    ``print``(number_1, "``*``", number_2, "``=``",``                    ``multiply(number_1, number_2))` `elif` `select ``=``=` `4``:``    ``print``(number_1, "``/``", number_2, "``=``",``                    ``divide(number_1, number_2))``else``:``    ``print``("Invalid ``input``")`

Output:

```Please select operation -
1. Add
2. Subtract
3. Multiply
4. Divide
Select operations form 1, 2, 3, 4 : 1
Enter first number : 15
Enter second number : 14
15 + 14 = 29```

My Personal Notes arrow_drop_up