-
Notifications
You must be signed in to change notification settings - Fork 2
Expand file tree
/
Copy path08_calculator_module.py
More file actions
37 lines (31 loc) · 1.15 KB
/
Copy path08_calculator_module.py
File metadata and controls
37 lines (31 loc) · 1.15 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
# 08_calculator_module.py
# Concept: A math calculator built entirely with functions
def add(a, b): return a + b
def subtract(a, b): return a - b
def multiply(a, b): return a * b
def divide(a, b):
if b == 0:
return "Error: Division by zero!"
return a / b
def calculator():
"""Main calculator logic using functions."""
print("--- Functional Calculator ---")
print("Select operation: 1.Add, 2.Subtract, 3.Multiply, 4.Divide")
choice = input("Enter choice (1/2/3/4): ")
if choice in ('1', '2', '3', '4'):
num1 = float(input("Enter first number: "))
num2 = float(input("Enter second number: "))
if choice == '1':
print(f"Result: {add(num1, num2)}")
elif choice == '2':
print(f"Result: {subtract(num1, num2)}")
elif choice == '3':
print(f"Result: {multiply(num1, num2)}")
elif choice == '4':
print(f"Result: {divide(num1, num2)}")
else:
print("Invalid Input")
# Execute the calculator
if __name__ == "__main__":
# We use this block to ensure calculator() only runs if the script is executed directly
calculator()