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

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

课程:《Python程序设计》
班级: 202442
姓名: 朱睿颖
学号:20244211
实验教师:王志强
实验日期:2025年4月1日
必修/选修: 专选课

1.实验内容

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

2. 实验过程及结果

  • 先调用math函数,再用def定义一个 calculate,创建operator。
  • 用分支结构对运算符号进行条件判断。要着重考虑运算的特殊情况。比如,除法的除数不可为0,这时,要对这种情况进行讨论。比如,进行次方运算时,运算结果太大,或者小数幂,用try和except,意思是,冒险这么做,但是有例外的情况。
  • 还要考虑出现我没有的运算符,我应当处理,输出对应语句。
  • while循环部分,我要先进行是否继续运算的判断,不然会出错;而且,因为输入的都是字符串型,要转化成其他型,所以还要对复数、实数进行讨论。利用break停止循环,可以减少用flag这个变量。还要考虑到是否有有效的数字。
  • 完整代码如图:

  • 运行结果如下:

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

  • 问题1:我发现输入no时,无法正常退出。

  • 问题1解决方案:发现是退出的判断语句放的位置有问题应当修改为以下内容
  • 问题2:部分运算在math中,导致在计算^报错,如图:
  • 问题2解决方案:加上import math.
  • 问题3:我不理解为什么当除数不为0时,不用return None,也能运行。
  • 问题3解决方案:问老师,发现系统会自动返回None。

其他(感悟、思考等)

  • 我通过这次自己动手构建计算器的实践,我深刻体会到了编程带来的成就感和思维锻炼。从一开始对计算器原理的模糊认知,到现在能够完整实现一个功能完备的计算器程序,这个过程让我获益良多。
  • 在编程过程中,我学会了如何将复杂问题分解简化。一个看似复杂的计算器程序,实际上可以分为两个模块:条件判断和循环语句。条件判断负责识别的符号类型,并执行加减乘除等运算;循环语句则让计算器能够持续运行,直到用户退出整个循环。
  • 在实现过程中,我遇到了不少需要细致处理的情况。比如除法运算时除数不能为零的问题,这让我意识到编程要周全地处理各种可能的异常情况。
  • 通过实践,我掌握了Python中各种运算的表达方式。从基本的加减乘除,到取模、整除,再到幂运算,每种运算都有其特定的语法和使用场景。特别是发现math.pow()和**运算符的区别时,让我认识到看似相同的功能,在细节处理上可能并不相同。所以,在学习编程的过程中要培养严谨的思维,遇到问题一定多思考。

参考资料

posted @ 2025-04-06 19:10  布鲁克林要种树  阅读(28)  评论(1)    收藏  举报