20242129《Python程序设计》实验二报告

20242129 2024-2025-2 《Python程序设计》实验二报告

课程:《Python程序设计》
班级: 2421
姓名: 史若晨
学号:20242129
实验教师:王志强
实验日期:2025年3月26日
必修/选修: 公选课

1.实验内容

  • 设计并完成一个完整的应用程序,完成加减乘除模等运算,功能多多益善。
  • 考核基本语法、判定语句、循环语句、逻辑运算等知识点

2.实验要求

  • 创建工程项目,使用Python语言实现具体的操作运算,并完成程序调试和运行,代码托管到码云。

3.实验过程及结果

1.实验代码

    import math
def add(num1,num2):
    return num1 + num2
def sub(num1,num2):
    return num1 - num2
def mul(num1,num2):
    return num1 * num2
def div(num1,num2):
    if num2 ==0:
        print("除数不能为0")
        return 0
    return num1 / num2
def expo(num1,exp):
    return num1 ** exp
def log(num1,base=math.e):
    if num1 <= 0 or base <= 0:
        print("对数的底数和真数必须大于0")
        return 0
    return math.log(num1,base)
flag = True
while flag:
    operation = input("(1)实数运算(2)复数运算: ")
    if operation == '1':
        choice = input("输入选择的运算(+,-,*,/,^,log):")
        num1 = int(input("请输入一个数:"))

        if choice == '+':
            num2 = int(input("请输入另一个数:"))
            print(f"{num1} + {num2} = ",add(num1,num2))
        elif choice == '-':
            num2 = int(input("请输入另一个数:"))
            print(f"{num1} - {num2} = ",sub(num1,num2))
        elif choice == '*':
            num2 = int(input("请输入另一个数:"))
            print(f"{num1} * {num2} = ",mul(num1,num2))
        elif choice == '/':
            num2 = int(input("请输入另一个数:"))
            result = div(num1,num2)
            if result != 0:
                print(f"{num1} / {num2} = {result}")
        elif choice == '^':
            exp = float(input("请输入指数:"))
            print(f"{num1} ^ {exp} = ",expo(num1,exp))
        elif choice == 'log':
            base = float(input("请输入对数的底数: "))
            result = log(num1, base)
            if result != 0:
                print(f"log_{base}({num1}) = {result}")
        else:
            print("请输入正确的运算选项!")

    elif operation == '2':
        choice = input("输入选择的运算(+,-,*,/):")
        cnum1 = complex(input("请输入一个复数"))
        cnum2 = complex(input("请输入另一个复数"))
        if choice == '+':
            print(f"{cnum1} + {cnum2} = ",add(cnum1,cnum2))
        elif choice == '-':
            print(f"{cnum1} - {cnum2} = ",sub(cnum1,cnum2))
        elif choice == '*':
            print(f"{cnum1} * {cnum2} = ",mul(cnum1,cnum2))
        elif choice == '/':
            print(f"{cnum1} / {cnum2} = ",div(cnum1,cnum2))
        else:
            print("请输入正确的运算选项!")
    else:
        print("无效输入,请输入正确的运算类型")
    con2 = input("是否继续运算 (y/n):")
    if con2 == 'y':
        flag = True
    elif con2 == 'n':
        flag = False

2.调试代码

3.实验结果

4.代码托管到码云


git仓库 https://gitee.com/st0ry/the-experiment-of-the-story

4.实验过程中遇到的问题和解决过程

  • 问题1:执行一次代码还不能多次运算
  • 问题1解决方案:使用while循环

其他(感悟、思考等)

代码还是比较容易理解的

参考资料

posted @ 2025-03-26 22:40  St0ry  阅读(13)  评论(0)    收藏  举报