20224219 吴鹏垚 实验二《Python程序设计》实验报告

20224219吴鹏垚 2024-04-01 17:07:09

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

课程:《Python程序设计》

班级: 2242

姓名: 吴鹏垚

学号:20224219

实验教师:王志强

实验日期:2023年3月26日

必修/选修: 公选课

## 1.实验内容

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

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

## 2. 实验过程及结果

1.通过老师课程讲解指导编写相关代码,首先使用def.定义新的函数,同时代码会显示"新*",定义相关加减乘除和C(复数)的运算,包括sum(),sub(),mul(),div(),log(),cdiv(),csum(),csub(),cmul()等相关运算。同时可以使用import math.来引入相关算法内容。

  • 其中注意if循环结构的引用和while flag函数的引用以实现重复进行运算。
import math
def log(a,b):
    return math.log(b,a)
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 Csum(c1,c2):
    return(c1+c2)
def Csub(c1,c2):
    return(c1-c2)
def Cmul(c1,c2):
    return(c1*c2)
flag = True
while flag:
    print("欢迎使用不知道能不能用的计算器")
    print("开发者:yeah it's me")
    print("----三土土土土土----")
    print("------------------")
    print("----坏了!救命救命----")
    print("----如果能算出来的话----")
    print("----记得留下WeChat----")
    operator = input("请输入运输符号(+-*/c log):")
    if operator == "+":
        a = eval(input("请输入a:"))
        b = int(input("请输入b:"))
        print("a+b=",sum(a,b))
    elif operator == "log":
        a = eval(input("请输入a:"))
        b = int(input("请输入b:"))
        print("logab=",log(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") == "y" else False

 

2.美化代码,可以在代码前输入print()加入相关内容美化计算器内容。

 

3.调试程序,确保能够正确运行并进行计算。

 4.将代码传输到Gitee码云端

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

问题1:在实验过程中对于代码的使用较为不熟练

解决方案:在老师的引导下编写相关公式,同时也可使用import math来查询相关公式

问题2:在代码运行过程中出现错误

解决方案:仔细检查每行代码,发现存在C1C2和ab误用情况,使得代码输出没有对象

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

编写Python计算器代码不仅是一个练习编程技巧的好方法,而且还使得我深入理解Python的语言特性、函数定义、计算流程等内容,尤其是理解函数的重要性,通过定义函数来执行基本运算使得代码更加清晰。同时让我熟悉控制流程,实现一个用户界面,让用户可以选择不同的运算,这需要用到if-else语句。通过编写计算机这个项目,我学会将课上课下内容相结合,不断操作,熟练操作才能够真正的把python语言学会运用,同时要细心检查代码内容,注意避免错误。

 

 

...全文
64 回复 打赏 收藏 转发到动态 举报
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复
内容概要:本文提出了一种基于快速稀疏辅助信号分解与非凸增强技术的轴承故障诊断方法,并提供了完整的Matlab代码实现。该方法旨在从复杂的机械设备振动信号中高效、准确地提取故障特征,通过优化信号分解过程克服传统方法在噪声干扰下敏感、分辨率不足的问题,结合非凸优化策略增强微弱故障信号的辨识能力,从而提升早期故障诊断的准确性与鲁棒性。研究涵盖了算法原理、模型构建、仿真验证及结果分析,展示了其在旋转机械状态监测中的实际应用价值。; 适合人群:具备一定信号处理基础和Matlab编程能力,从事机械故障诊断、状态监测、智能运维等相关领域的科研人员及工程技术人员,尤其适合研究生和从事相关项目研发的工程师。; 使用场景及目标:①应用于旋转机械(如电机、风机、齿轮箱)的轴承早期故障检测;②用于复杂噪声环境下微弱故障信号的提取与增强;③为开发高精度智能诊断系统提供算法支持和技术参考;④辅助完成科研论文复现、毕业课题或工业项目开发。; 阅读建议:此资源以算法实现为核心,强调理论与实践结合,建议读者在学习过程中同步运行Matlab代码,深入理解信号分解与优化增强的每一步处理逻辑,并尝试在不同数据集上进行测试与调参,以掌握算法的适应性与优化技巧。

93

社区成员

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

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