#calculator
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 "Error! Division by zero."
return x / y
def floor_divide(x, y):
if y == 0:
return "Error! Division by zero."
return x // y
def modulo(x, y):
if y == 0:
return "Error! Division by zero."
return x % y
def exponential(x, y):
return x ** y
def logarithm(x):
return math.log(x)
def square_root(x):
return math.sqrt(x)
def sine(x):
return math.sin(x)
def cosine(x):
return math.cos(x)
def calculator():
while True:
print("Options:")
print("Enter '+' for addition")
print("Enter '-' for subtraction")
print("Enter '*' for multiplication")
print("Enter '/' for division")
print("Enter '//' for floor division")
print("Enter '%' for modulo")
print("Enter '^' for exponentiation")
print("Enter 'log' for logarithm")
print("Enter 'sqrt' for square root")
print("Enter 'sin' for sine")
print("Enter 'cos' for cosine")
print("Enter 'q' to quit")
choice = input("Enter choice: ")
if choice == 'q':
break
if choice not in ['sqrt', 'sin', 'cos']:
num1 = float(input("Enter first number: "))
if choice != '^':
num2 = float(input("Enter second number: "))
if choice == '+':
print("Result:", add(num1, num2))
elif choice == '-':
print("Result:", subtract(num1, num2))
elif choice == '*':
print("Result:", multiply(num1, num2))
elif choice == '/':
print("Result:", divide(num1, num2))
elif choice == '//':
print("Result:", floor_divide(num1, num2))
elif choice == '%':
print("Result:", modulo(num1, num2))
elif choice == '^':
print("Result:", exponential(num1, num2))
elif choice == 'log':
print("Result:", logarithm(num1))
elif choice == 'sqrt':
print("Result:", square_root(num1))
elif choice == 'sin':
print("Result:", sine(num1))
elif choice == 'cos':
print("Result:", cosine(num1))
else:
print("Invalid input")
calculator()