Files
notes/CS1032/practical-2023-11-08/calc.py
bluepython508 d320a956f8 2023-11-15
2023-11-15 08:53:39 +00:00

71 lines
1.7 KiB
Python

# This function adds two numbers
def add(x, y):
return x + y
# This function subtracts two numbers
def subtract(x, y):
return x - y
# This function multiplies two numbers
def multiply(x, y):
return x * y
# This function divides two numbers
def divide(x, y):
return x / y
def avg(x, y):
return (x + y) / 2
def sci(x, y):
return x * 10 ** y
print("Select operation.")
print("1.Add")
print("2.Subtract")
print("3.Multiply")
print("4.Divide")
print("5.Average")
print("6.Scientific Notation")
while True:
# take input from the user
choice = input("Enter choice(1/2/3/4/5/6): ")
# check if choice is one of the four options
if choice in ('1', '2', '3', '4', '5', '6'):
try:
num1 = float(input("Enter first number: "))
num2 = float(input("Enter second number: "))
except ValueError:
print("Invalid input. Please enter a number.")
continue
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(f"avg({num1}, {num2})", "=", avg(num1, num2))
elif choice == '6':
print(f"{num1}e{num2}", "=", sci(num1, num2))
# check if user wants another calculation
# break the while loop if answer is no
next_calculation = input("Let's do next calculation? (yes/no): ")
if next_calculation.lower().startswith('n'):
break
else:
print("Invalid Input")