当前位置: 首页 > news >正文

20253431 2025-2026-2 《Python程序设计》实验2报告

20253431 2025-2026-2 《Python程序设计》实验2报告

课程:《Python程序设计》
班级: 2534
姓名: 吕俊孜
学号:20253431
实验教师:王志强
实验日期:2026年4月13日
必修/选修: 公选课

1.实验内容

(1)编写计算器程序

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

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

(2)用LLM生成一个计算器程序

介绍相关功能,并分析生成的程序代码含义。

对比分析自写程序与生成程序的区别(好与坏)。

2. 实验过程及结果

自己写的代码(仿照老师写的嘻嘻):

import math
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):return a/b
def divv(a,b):return a//b
def power(a,b):return a**b
def mod(a,b):return a%b
def log(a,b):return math.log(a,b)
while True:print('不简单不刺激计算器vX.XX')print('='*50)a = eval(input("请输入一个数\n"))b = eval(input("请输入另一个数\n"))operator = input('选择运算符号:+、-、*、/,%,//,log,pow\n')while True:if operator not in ['+','-','*','/','%','//','log','pow'] :print('输入有误,请重新输入')operator = input('选择运算符号:+、-、*、/,%,//,log,pow\n')else:breakif operator == '+':print(f'{a} {operator} {b} = {sum(a,b)}')elif operator == '-':print(f'{a} {operator} {b} = {sub(a,b)}')elif operator == '*':print(f'{a} {operator} {b} = {mul(a,b)}')elif operator == '/':if b == 0:print('除数不能等于0!')else:print(f'{a} {operator} {b} = {div(a,b)}')elif operator == '%':if b == 0:print('除数不能等于0!')else :print(f'{a} {operator} {b} = {mod(a,b)}')elif operator == '//':if b == 0:print('除数不能等于0!')else :print(f'{a} {operator} {b} = {divv(a,b)}')elif operator == 'log':print(f'{a} {operator} {b} = {log(a,b)}')elif operator == 'pow':print(f'{a} {operator} {b} = {power(a,b)}')print('是否继续(Y/N):')choice = input()if choice.lower() == 'y':continueelse:break

看起来非常简单……然后学老师一样用了比较有趣的提示词逗逗DS(豆包烧了)……

然后……

ai生成的代码运行截图

呃总之效果是这样……详细代码请见下面的链接:

AI代码……

根本看不懂(晕……)我以后也会变成这样的大手子吗

不过ai的代码确实要健壮很多,也确实实用性和交互性要高得多,包括大概看注释看到了有报错的,安全性的……有很多自己都没考虑到的东西

ai的代码总体还是考虑更全面,安全性这方面感觉自己敲代码还是很少有考虑,比如说老师教的eval,ai说好像比较危险……

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

  • 问题1:ai写的代码根本看不懂

  • 问题1解决方案:呜呜呜我再也不乱写提示词了

其他(感悟、思考等)

计算器很简单,但是要从命令符到可视化交互却很难,感觉离能做出像市面上那种软件还有很长一条路要走,加油!

参考资料

  • 《Java程序设计与数据结构教程(第二版)》

  • 《Java程序设计与数据结构教程(第二版)》学习指导

http://www.jsqmd.com/news/636000/

相关文章:

  • 2026均质机实力厂家口碑榜揭晓,这些品牌值得关注,立式混合机/静态混合器/乳化机/乳化泵,均质机生产厂家推荐 - 品牌推荐师
  • 如何免费实现Windows字体自定义:No!! MeiryoUI终极指南
  • EfficientNet复合缩放策略解析:如何平衡深度、宽度与分辨率提升模型性能
  • Linux CFS 的 CFS_BANDWIDTH:任务组的 CPU 带宽硬限制
  • 表与表之间的关系(多对一 多对多)
  • 螺杆空压机节能新范式:艾高如何打破工业气源痛点 - 资讯焦点
  • 论文双降工具推荐:同时搞定重复率和AI率超实用方案
  • 5KW MPPT控制器:STM32F103RCT6主控平台BUCK-BOOST逆变拓扑太阳能控...
  • Python入门第二课 基础语法(一)
  • html如何查看windows
  • 20252337 实验二《Python程序设计》实验报告
  • 重庆汽车贴膜排行榜:精选优质门店满足山城车主需求 - 资讯焦点
  • 投资避坑指南:EBC巴克莱托管才是真安全 - 资讯焦点
  • 终极指南:如何在VSCode中配置高效的Fortran开发环境
  • HTML一键打包EXE工具 加密设置静态密码功能详解
  • Transformer视觉模型进化论:从DETR到DINO-X的技术路线图(附性能对比表)
  • 结构化和面向对象分析和设计深入比较
  • 2026头部券商交易费用全解析:认准正规渠道与透明费率 - 资讯焦点
  • 如何用Akagi提升雀魂麻将水平:5步完成AI辅助实战指南
  • 20260413 - 前缀和 差分 总结
  • Bash、CMD与PowerShell相关的类型工具的深度对比及实战解析,AI是如何调用的
  • rk3588s的firfly的linux的sdk版本
  • CentOS7下eBPF开发环境搭建避坑指南:从内核升级到第一个Hello World
  • 微信小程序的武夷山垃圾分类知识科普
  • 向量记忆 vs 实体记忆 vs 元认知记忆,深度拆解SITS2026定义的AIAgent长期记忆三维模型
  • iMetaMed | 西湖大学陶亮组-解析皮肤微生物-宿主互作
  • 创业公司选短信验证码,阿里云、梦网、容联、互亿无线到底哪家更省钱?附真实账单对比
  • 别再手动拼接Prompt了!用ChatML结构化你的大模型对话(以Llama 2/3为例)
  • 2026年想找靠谱家电维修服务商?这些方法让你轻松避开陷阱,快速找到优质服务 - 小何家电维修
  • 智能楼宇电能管理系统:全链路监测,用电安全全程守护