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

20224207周子涵 2024-04-02 20:08:50

# 20224207 2023-2024-2 《Python程序设计》实验二报告

课程:《Python程序设计》
班级: 2242
姓名: 周子涵
学号:20224207
实验教师:王志强
实验日期:2024年3月26日
必修/选修: 公选课

## 1.实验内容

设计并完成一个完整的应用程序,完成加减乘除模等运算,功能多多益善。

考核基本语法、判定语句、循环语句、逻辑运算等知识点。

## 2. 实验过程及结果
1.在代码最前端设定运算法则,如def sum(a,b)时输出a+b的结果,以此类推可添加不同的函数,完成复数的运算等。

 2.输出运行时显示的文字:operator=input("请输入运算符(+-*/c):"),选择运算符和a/b数值后用if语句完成计算。

 

3.设置循环 ,在if语句前加上

flag=True

while flag:

 

 

在末尾加上

flag =True if input("是否要继续运算?Y or N\n")=="Y"else False

4.完善计算器显示,在循环开始时输出“欢迎使用Besti计算器 ”,并标明开发者和开发时间。

 5.完成计算器的程序设计,具体代码如下:

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("…………欢迎使用Besti计算器!…………")
    print("-     开发者:Besti        -")
    print("-                         -")
    print("-     开发日期:20240326    -")
    operator=input("请输入运算符(+-*/c):")
    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


6. 运用实验一中所学内容将代码托管到码云。

 

## 3. 实验过程中遇到的问题和解决过程
- 问题1:除法运算时b为0无法计算
- 问题1解决方案:在def div(a,b)下增加b为0时的备案


- 问题2:计算完成后未进入循环进行继续运算
- 问题2解决方案:检查代码后发现“while True:”后面的代码没有正确缩进,改正后问题得以解决,能够正常进入循环运算。

 

 
## 其他(感悟、思考等)

在此次实验中,我学习了基本语法和逻辑运算,练习了判定语句和循环语句的运用,使用Python语言实现了具体的操作运算和程序的调试运行,成功利用自己设计的计算器完成了运算,对代码和程序有了进一步的了解。同时,我复习了托管代码到码云的方法,加深对gitee的掌握。在具体操作中,我在遇到难题时先自行思考,无法解决时选择寻求老师或同学的帮助,在大家的共同努力下完成了成长和蜕变。

## 参考资料

-  [《Java程序设计与数据结构教程(第二版)》](https://book.douban.com/subject/26851579/)

-  [《Java程序设计与数据结构教程(第二版)》学习指导](http://www.cnblogs.com/rocedu/p/5182332.html)
-  ...

...全文
39 回复 打赏 收藏 转发到动态 举报
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复

80

社区成员

发帖
与我相关
我的任务
社区描述
Python程序设计作业
软件构建 高校 北京·丰台区
社区管理员
  • blackwall0321
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧