20241202王凯 实验二《Python程序设计》实验报告
实验二 计算器设计
学号 2024-2025-2 《Python程序设计》实验x报告
课程:《Python程序设计》
班级: 2412
姓名: 王凯
学号:20241202
实验教师:王志强
实验日期:2025年3月26日
必修/选修: 公选课
1.实验内容
(1)设计并完成一个完整的应用程序,完成加减乘除模等运算,功能多多益善。
(2)考核基本语法、判定语句、循环语句、逻辑运算等知识点。
2. 实验过程及结果
在老师的指导下进行了计算机的程序设计
(1)下图为初版

(2)下图为加入复数的模板

(3)下图为加入log函数后的最终版

(4)以下为最终代码
from operator import truediv
import math
def Csum(num1,num2):
return num1+num2
def Csub(num1,num2):
return num1-num2
def Csuc(num1,num2):
return num1*num2
def Csud(num1,num2):
if num2==0:
print("除数不能为0")
else:
return num1/num2
def logab(a,b):
if num2 == 0 or num1 == 0:
print("错误")
return 0
else:
return math.log(a,b)
flag=True
while flag:
if input("整数运算1,复数运算2")== "2":
num1 = complex(input("Enter first number: "))
num2 = complex(input("Enter second number: "))
choice = input("请输入运算符(+-*/):")
if choice == "+":
print("num1+num2=", Csum(num1, num2))
elif choice == "-":
print("num1-num2=", Csub(num1, num2))
elif choice == "*":
print("num1*num2=", Csuc(num1, num2))
elif choice == "/":
print("num1/num2=", Csud(num1, num2))
else:
num1 = int(input("Enter first number: "))
num2 = int(input("Enter second number: "))
choice = input("请输入运算符(+-*/log):")
if choice == "+":
print("num1+num2=",Csum(num1,num2))
elif choice == "-":
print("num1-num2=",Csub(num1,num2))
elif choice == "*":
print("num1*num2=",Csuc(num1,num2))
elif choice == "/":
print("num1/num2=",Csud(num1,num2))
elif choice == "log":
print("以num2为底,num1的对数", logab(num1, num2))
aaa = input("是否继续Y/N")
if aaa == "N":
flag = False
elif aaa == "Y":
flag = True
3. 实验过程中遇到的问题和解决过程
- 问题1:log函数一开始会报错
- 问题1解决方案:仔细查看老师所给代码后,将logab(num1,num2)改为logab(a,b)
其他(感悟、思考等)
又学到了新东西,得吃
感谢强哥,下次踢球不卡你身位了,嘿嘿

浙公网安备 33010602011771号