93
社区成员
发帖
与我相关
我的任务
分享课程:《Python程序设计》
班级:2342
姓名: 郑凯夫
学号:20234203
实验教师:王志强
实验日期:2023年3月26日
必修/选修: 公选课
(一)实验内容
设计并完成一个完整的应用程序,完成加减乘除模等运算,功能多多益善。
考核基本语法、判定语句、循环语句、逻辑运算等知识点
(二)实验要求
明确定义加减乘除对应的函数:
加:sum 减:sub 乘:mul 除:div

进一步对体现复数c1,c2值加、减、乘、除的基本运算功能:
加:Csum 减:Csub 乘:Cmul 除:Cdiv

通过if-elif-else结构作为框架进行相应的运算

同时加入无限循环来判定使用者是否需要继续计算

实验完成后进行运行验证

实验无误
在实验完成后进行计算器的美化

代码如下
def sum(a,b):
return(a+b)
def sub(a,b):
return (a-b)
def mul(a,b):
return (a*b)
def div(a,b):
if b==0:
print("0不能为除数")
return 0
return(a/b)
def Cdiv(c1,c2):
return c1/c2
def Cmul(c1,c2):
return c1*c2
def Csum(c1,c2):
return c1+c2
def Csub(c1,c2):
return c1-c2
flag=True
while flag:
print("------这是一个计算器------")
print("--开发者;20234203郑凯夫--")
print("-------这是Pyhon作业-------")
print("-----开发日期:20240402-----")
print("=========================")
operator=input("请输入运算符(+-*/):")
if operator=="+":
a=eval(input("请输入a:"))
b=int(input("请输入b:"))
print("a+b+",sum(a,b))
elif operator=="-":
a=eval(input("请输入a:"))
b=int(input("请输入b:"))
print("a+b+",sub(a,b))
elif operator=="*":
a=eval(input("请输入a:"))
b=int(input("请输入b:"))
print("a+b+",mul(a,b))
elif operator=="/":
a=eval(input("请输入a:"))
b=int(input("请输入b:"))
print("a+b+",div(a,b))
elif operator == "c":
coperator=input("请输入复数的运算+-*/:")
c1 = eval(input("请输入复数1(eg:1+2j):"))
c2 = eval(input("请输入复数2(eg:1+2j):"))
if coperator=="/":
print("(",c1,")/(",c2,")=",Cdiv(c1,c2))
elif coperator=="+":
print("(", c1, ")+(", c2, ")=", Csum(c1, c2))
elif coperator=="-":
print("(", c1, ")-(", c2, ")=", Csub(c1, c2))
elif coperator == "*":
print("(", c1, ")*(", c2, ")=", Cmul(c1, c2))
flag=True if input("是否要继续运算?Y or N\n")=="Y"else False
实验完成保存并上传至git

## 3. 实验过程中遇到的问题和解决过程
- 问题1:关于代码格式错误导致不能正常运行
- 解决方案:依据python运行错误提示进行逐行订正,并依据老师课上所录制内容进行一一对照,成功确保程序正常运行
- 问题2:在while循环运用下如何进行多次运算的理论不明确
- 解决方案:通过翻找课本、查找网络资料以及对照老师课上所讲,成功明晰了运行原理
另:中英文切换不流畅、大小写字符不正确的问题依旧时不时出现,干扰实验正常运行
## 其他(感悟、思考等)
相较于第一次实验,第二次实验对于代码的编写有了明显的改观。从实验一的构建程序与了解到实验二的实际操作,基本顺利完成了老师要求的系列操作。实验中进一步熟练循环语句并且了解了加减乘除基本运算,面对自己制作的第一个略长的代码程序,也是有少许的成就感。期待下一次的实验课。