编辑代码

# coding:utf-8
#JSRUN引擎2.0,支持多达30种语言在线运行,全仿真在线交互输入输出。 
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:
        raise ValueError("错误:除数不能为零")
    return x / y

def calculator():
    print("选择操作:")
    print("1. 加")
    print("2. 减")
    print("3. 乘")
    print("4. 除")

    try:
        choice = input("输入选择(1/2/3/4):")
        if choice not in ['1', '2', '3', '4']:
            print("无效的选择,请输入 1、2、3 或 4")
            return

        num1 = float(input("输入第一个数字:"))
        num2 = float(input("输入第二个数字:"))

        if choice == '1':
            print(f"{num1} + {num2} = {add(num1, num2)}")
        elif choice == '2':
            print(f"{num1} - {num2} = {subtract(num1, num2)}")
        elif choice == '3':
            print(f"{num1} * {num2} = {multiply(num1, num2)}")
        elif choice == '4':
            print(f"{num1} / {num2} = {divide(num1, num2)}")
    except ValueError as e:
        print(f"输入错误:{e}")
    except EOFError:
        print("错误:输入意外结束,请检查输入是否正确。")
    except Exception as e:
        print(f"发生未知错误:{e}")

if __name__ == "__main__":
    calculator()