# 20254121 2025-2026-2 《Python程序设计》实验二报告
课程:《Python程序设计》
班级: 2541
姓名: 何若水
学号:20254121
实验教师:王志强
实验日期:2025年4月7日
必修/选修: 专选课
## 1.实验内容
①编写计算器程序
- 设计并完成一个完整的应用程序,完成加减乘除模等运算,功能多多益善。
- 考核基本语法、判定语句、循环语句、逻辑运算等知识点。
②用LLM生成一个计算器程序 -介绍相关功能,并分析生成的程序代码含义。
-对比分析自写程序与生成程序的区别(好与坏)。
## 2. 实验过程及结果
①编写计算器程序
- 运用def,定义各类函数,接着输入各种函数的英语名称与其运算符号,完成加减乘除模等初步计算功能编写,得到1.0版本:

- 在老师的带领下逐步引入判定语句。循环语句等更复杂的语法与知识点,使得计算程序可以多次进行,并将功能扩展到可以计算浮点数和复数,最终得到3.0版本:

②用LLM生成一个计算器程序
- 通过运用豆包这一大模型,输入指令“帮我写一个Python代码,使用PyCharm,得到一个可以计算加减乘除模对数等的程序,而且可以反复使用,直到用户输入停止”,得到LLM计算器程序,这一程序支持 “+”、“-”、“*”、“/”、“%”和对数等常规运算,可以反复计算,不会自动退出,在输入提示词stop后即可停止程序:

-对比分析自写程序与生成程序的区别(好与坏):
自写程序:
好:运算范围更广,可以扩展到浮点数和复数,实现更多计算功能;
坏:缺乏健壮性,不能提示用户输入有效的数字和符号,容易引起错误。
生成程序:
好:具有自带的健壮性,可以及时纠正错误,比如除 0、无效数字、非法对数等常见错误;
在结束程序时会使用礼貌用语,保证用户的使用愉快;
坏:由于没有在提示词中提示大模型,该程序默认仅包含实数的运算,需要进行第二次提示才能扩展其他运算功能,它并不是传统意义上的多功能计算机,并且因为需要多次提示,升级的版本显得比较麻烦。
## 3. 实验过程中遇到的问题和解决过程
- 问题1:对于各种函数的名称不熟悉,不知道取模等函数的符号与英语名称,不知道其运算原理;
- 问题1解决方案:通过听讲老师,询问人工智能等,逐渐熟悉这些函数,提高代码编写速度。
- 问题2:在编写循环语句时忘记如何将代码批量移动到while true的内部;
- 问题2解决方案:通过询问身边同学,回忆起通过首先按下shift键与pg dn键,可以选中代码,之后再按下tab键,就可以让选中内容统一移动到while true的内部。
- 问题3:在运行循环语句时,运行台显示“请输入数字”步骤循环出现,无法进行下一步“两数进行运算”;
- 问题3解决方案:求助人工智能,让它为我纠错,逐步解决循环的问题。
## 其他(感悟、思考等)
各类函数是Python代码的重要组成部分,在跟随老师学习函数编写后,我可以编写的语法与运算代码增加了,掌握了更多的知识点,同时也复习了之前的比如判定语句、循环语句等知识点,这为我日后的深入学习起到了承前启后的作用。同时,编写这些函数运算的过程也增强了我发现并解决问题的能力,我学会了通过自己、同学、人工智能等多种途径来解决问题,提高代码的质量,精进自己的技术。最后,这些函数的引入使得编写的过程更加具有趣味性,我期待着下次课老师引入更多知识,带领我们发现代码的无穷乐趣。
## 参考资料
- [《Java程序设计与数据结构教程(第二版)》](https://book.douban.com/subject/26851579/)
- [《Java程序设计与数据结构教程(第二版)》学习指导](http://www.cnblogs.com/rocedu/p/5182332.html)
浙公网安备 33010602011771号