#menu driven calculator with math functions
import math
def add(x, y):
return x + y
def subtract(x, y):
return x - y
def multiply(x, y):
return x * y
def divide(x, y):
if y != 0:
return x / y
else:
return "Cannot divide by zero"
def square_root(x):
return math.sqrt(x)
def cube_root(x):
return math.cbrt(x)
def sine(x):
return math.sin(x)
def calculator():
print("Simple Calculator")
print("1. Addition")
print("2. Subtraction")
print("3. Multiplication")
print("4. Division")
print("5. Square Root")
print("6. Cube Root")
print("7. Sine")
try:
choice = int(input("Enter choice (1/2/3/4/5/6/7): "))
if choice not in [1, 2, 3, 4, 5, 6, 7]:
print("Invalid choice. Please enter a number between 1 and 7.")
return
if choice in [1, 2, 3, 4]:
num1 = float(input("Enter first number: "))
num2 = float(input("Enter second number: "))
else:
num1 = float(input("Enter a number: "))
if choice == 1:
print(num1, "+", num2, "=", add(num1, num2))
elif choice == 2:
print(num1, "-", num2, "=", subtract(num1, num2))
elif choice == 3:
print(num1, "*", num2, "=", multiply(num1, num2))
elif choice == 4:
print(num1, "/", num2, "=", divide(num1, num2))
elif choice == 5:
print(num1, "**(1/2)", "=", square_root(num1))
elif choice == 6:
print(num1, "**(1/3)", "=", cube_root(num1))
elif choice == 7:
print("Sine of", num1, "radians =", sine(num1))
except ValueError:
print("Invalid input. Please enter valid numbers.")
calculator()