位置: IT常识 - 正文

让 new bing 使用 GPT-4 编写一个令人满意的程序全过程赏析

编辑:rootadmin
让 new bing 使用 GPT-4 编写一个令人满意的程序全过程赏析

推荐整理分享让 new bing 使用 GPT-4 编写一个令人满意的程序全过程赏析,希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:,内容如对您有帮助,希望把文章链接给更多的朋友!

让 new bing 使用 GPT-4 编写一个令人满意的程序全过程赏析

标签:new bing、GPT-4

文章目录让 new bing 使用 GPT-4 编写一个令人满意的程序全过程赏析前言1 让 bing 编写一个画螺旋线的程序1.1 我的要求(1)1.2 bing 的回答全文(1)1.3 bing 编写的程序1.4 程序运行的结果2 让 bing 去掉多余的第一笔2.1 我的要求(2)2.2 bing 的回答全文(2)2.3 我的要求(3)2.4 bing 的回答全文(3)2.5 我的要求(4)2.6 bing 的回答全文(4)2.7 我的要求(5)2.8 bing 的回答全文(5)2.9 bing 编写的程序2.10 程序运行的结果3 改正第二笔起笔没有放下的错误3.1 我的要求(6)3.2 bing 的回答全文(6)3.3 我的要求(7)3.4 bing 的回答全文(7)3.5 bing 编写的程序3.6 程序运行的结果3.7 我的要求(8)3.8 bing 的回答全文(8)3.9 bing 编写的程序3.10 程序运行的结果3.11 我的要求(9)3.12 bing 的回答全文(9)3.13 bing 编写的程序3.14 程序运行的结果3.15 我的要求(10)3.16 bing 的回答全文(10)3.17 我的要求(11)3.18 bing 的回答全文(11)3.19 我的要求(12)3.20 bing 的回答全文(12)4 让画笔箭头方向跟螺旋线方向一致4.1 我的要求(13)4.2 bing 的回答全文(13)4.3 bing 编写的程序4.4 程序运行的结果4.5 我的要求(14)4.6 bing 的回答全文(14)4.7 bing 编写的程序4.8 程序运行的结果结语前言

前天 Open AI 的 GPT-4上线了,所能达到的高度惊爆人的眼球。上线当天,我就把应用 GPT-4 的新版微软搜索引擎 bing 使用环境配置好了。今天试着用这个 bing 的聊天功能,一步步与 bing 沟通,真还让 bing 替我编写了一个令我满意的 Python 程序。而这个画阿基米德螺旋线的 Python 程序,我在几年前自己 Coding 竟然花了半个月,才达到满意的结果。新科技带来的变化,令人眼花缭乱、一时难以判断走向,是不是很惊恐? 下面就在这里展现、赏析这个聊天过程吧。

1 让 bing 编写一个画螺旋线的程序1.1 我的要求(1)

1.2 bing 的回答全文(1)

由于 bing Chat 还不支持完整截图,去网页打开吧。点击此处或者复制链接后在 new bing 中打开(需要在 new bing 中登录后才能打开,下同)。

1.3 bing 编写的程序

为了美观,略有改动(step *= 0.99改为step *= 0.999),下同。

# 导入turtle模块,用于绘图import turtle# 导入math模块,用于计算import math# 创建一个turtle对象,命名为tt = turtle.Turtle()# 设置画笔的颜色和速度t.color("blue")t.speed(0)# 设置阿基米德螺旋线的参数a = 5 # 螺旋线的起始半径b = 0.1 # 螺旋线的增长系数angle = 0 # 螺旋线的起始角度step = 5 # 螺旋线的步长# 循环绘制阿基米德螺旋线,直到半径超过200像素或角度超过1080度while a < 200 and angle < 1080: # 计算阿基米德螺旋线上当前点的极坐标(r, theta) r = a + b * angle # 半径等于起始半径加上增长系数乘以角度 theta = math.radians(angle) # 角度转换为弧度制 # 计算阿基米德螺旋线上当前点的直角坐标(x, y) x = r * math.cos(theta) # x坐标等于半径乘以余弦值 y = r * math.sin(theta) # y坐标等于半径乘以正弦值 # 移动画笔到当前点,并画出一小段曲线 t.goto(x, y) # 更新角度和步长,使得曲线更平滑 angle += step step *= 0.999# 结束绘图,并保持窗口显示直到用户关闭 turtle.done()1.4 程序运行的结果

2 让 bing 去掉多余的第一笔

看上去从原点到螺旋线的起点的那条很短的直线即第一笔不是螺旋线的一部分,是多余的。

2.1 我的要求(2)

2.2 bing 的回答全文(2)

点击此处或者复制链接后在 new bing 中打开。

2.3 我的要求(3)

2.4 bing 的回答全文(3)

点击此处或者复制链接后在 new bing 中打开。

2.5 我的要求(4)

2.6 bing 的回答全文(4)

点击此处或者复制链接后在 new bing 中打开。

2.7 我的要求(5)

2.8 bing 的回答全文(5)

点击此处或者复制链接后在 new bing 中打开。

2.9 bing 编写的程序# 导入turtle模块,用于绘图import turtle# 导入math模块,用于计算import math# 创建一个turtle对象,命名为tt = turtle.Turtle()# 设置画笔的颜色和速度t.color("blue")t.speed(0)# 设置阿基米德螺旋线的参数a = 5 # 螺旋线的起始半径b = 0.1 # 螺旋线的增长系数angle = 0 # 螺旋线的起始角度step = 5 # 螺旋线的步长# 抬起画笔,不留痕迹(新增代码)t.penup()# 循环绘制阿基米德螺旋线,直到半径超过200像素或角度超过1080度while a < 200 and angle < 1080: # 计算阿基米德螺旋线上当前点的极坐标(r, theta) r = a + b * angle # 半径等于起始半径加上增长系数乘以角度 theta = math.radians(angle) # 角度转换为弧度制 # 计算阿基米德螺旋线上当前点的直角坐标(x, y) x = r * math.cos(theta) # x坐标等于半径乘以余弦值 y = r * math.sin(theta) # y坐标等于半径乘以正弦值 # 移动画笔到当前点,并画出一小段曲线 t.goto(x, y) # 更新角度和步长,使得曲线更平滑 angle += step step *= 0.999# 放下画笔,开始绘制(新增代码)t.pendown()# 结束绘图,并保持窗口显示直到用户关闭 turtle.done()2.10 程序运行的结果

3 改正第二笔起笔没有放下的错误

从运行结果看,第一笔前把笔抬起后,没有及时放下,导致后边的笔画全部没有画,需要改正。

3.1 我的要求(6)

3.2 bing 的回答全文(6)

点击此处或者复制链接后在 new bing 中打开。

3.3 我的要求(7)让 new bing 使用 GPT-4 编写一个令人满意的程序全过程赏析

3.4 bing 的回答全文(7)

点击此处或者复制链接后在 new bing 中打开。

3.5 bing 编写的程序# 导入turtle模块,用于绘图import turtle# 导入math模块,用于计算import math# 创建一个turtle对象,命名为tt = turtle.Turtle()# 设置画笔的颜色和速度t.color("blue")t.speed(0)# 设置阿基米德螺旋线的参数a = 5 # 螺旋线的起始半径b = 0.1 # 螺旋线的增长系数angle = 0 # 螺旋线的起始角度step = 5 # 螺旋线的步长# 抬起画笔,不留痕迹(新增代码)t.penup()# 循环绘制阿基米德螺旋线,直到半径超过200像素或角度超过1080度while a < 200 and angle < 1080: # 计算阿基米德螺旋线上当前点的极坐标(r, theta) r = a + b * angle # 半径等于起始半径加上增长系数乘以角度 theta = math.radians(angle) # 角度转换为弧度制 # 计算阿基米德螺旋线上当前点的直角坐标(x, y) x = r * math.cos(theta) # x坐标等于半径乘以余弦值 y = r * math.sin(theta) # y坐标等于半径乘以正弦值 # 移动画笔到当前点,并画出一小段曲线 t.goto(x, y) # 更新角度和步长,使得曲线更平滑 angle += step step *= 0.999# 放下画笔,开始绘制(新增代码)t.pendown()# 结束绘图,并保持窗口显示直到用户关闭 turtle.done()3.6 程序运行的结果

3.7 我的要求(8)

3.8 bing 的回答全文(8)

点击此处或者复制链接后在 new bing 中打开。

3.9 bing 编写的程序# 导入turtle模块,用于绘图import turtle# 导入math模块,用于计算import math# 创建一个turtle对象,命名为tt = turtle.Turtle()# 设置画笔的颜色和速度t.color("blue")t.speed(0)# 设置阿基米德螺旋线的参数a = 5 # 螺旋线的起始半径b = 0.1 # 螺旋线的增长系数angle = 0 # 螺旋线的起始角度step = 5 # 螺旋线的步长# 抬起画笔,不留痕迹(新增代码)t.penup()# 循环绘制阿基米德螺旋线,直到半径超过200像素或角度超过1080度while a < 200 and angle < 1080: # 计算阿基米德螺旋线上当前点的极坐标(r, theta) r = a + b * angle # 半径等于起始半径加上增长系数乘以角度 theta = math.radians(angle) # 角度转换为弧度制 # 计算阿基米德螺旋线上当前点的直角坐标(x, y) x = r * math.cos(theta) # x坐标等于半径乘以余弦值 y = r * math.sin(theta) # y坐标等于半径乘以正弦值 # 放下画笔,开始绘制(新增代码) t.pendown() # 移动画笔到当前点,并画出一小段曲线 t.goto(x, y) # 更新角度和步长,使得曲线更平滑 angle += step step *= 0.999# 结束绘图,并保持窗口显示直到用户关闭 turtle.done()3.10 程序运行的结果

3.11 我的要求(9)

3.12 bing 的回答全文(9)

点击此处或者复制链接后在 new bing 中打开。

3.13 bing 编写的程序# 导入turtle模块,用于绘图import turtle# 导入math模块,用于计算import math# 创建一个turtle对象,命名为tt = turtle.Turtle()# 设置画笔的颜色和速度t.color("blue")t.speed(0)# 设置阿基米德螺旋线的参数a = 5 # 螺旋线的起始半径b = 0.1 # 螺旋线的增长系数angle = 0 # 螺旋线的起始角度step = 5 # 螺旋线的步长# 循环绘制阿基米德螺旋线,直到半径超过200像素或角度超过1080度while a < 200 and angle < 1080: # 计算阿基米德螺旋线上当前点的极坐标(r, theta) r = a + b * angle # 半径等于起始半径加上增长系数乘以角度 theta = math.radians(angle) # 角度转换为弧度制 # 计算阿基米德螺旋线上当前点的直角坐标(x, y) x = r * math.cos(theta) # x坐标等于半径乘以余弦值 y = r * math.sin(theta) # y坐标等于半径乘以正弦值 if angle > 0: # 如果角度大于0,说明不是第一笔(新增代码) t.pendown() # 放下画笔,开始绘制(新增代码) else: # 否则,说明是第一笔(新增代码) t.penup() # 抬起画笔,不留痕迹(新增代码) # 移动画笔到当前点,并画出一小段曲线 t.goto(x, y) # 更新角度和步长,使得曲线更平滑 angle += step step *= 0.999# 结束绘图,并保持窗口显示直到用户关闭 turtle.done()3.14 程序运行的结果

至此,必应终于把多余的第一笔去掉了。表扬一下。

3.15 我的要求(10)

3.16 bing 的回答全文(10)

点击此处或者复制链接后在 new bing 中打开。

为了 new bing 以后能正确画出,特意总结了一下,令人发笑的是 new bing 还找了理由推脱。

3.17 我的要求(11)

3.18 bing 的回答全文(11)

(略)

3.19 我的要求(12)

3.20 bing 的回答全文(12)

点击此处或者复制链接后在 new bing 中打开。

4 让画笔箭头方向跟螺旋线方向一致

画笔箭头方向始终朝着右面,感觉怪怪的,让 bing 改一下。

4.1 我的要求(13)

4.2 bing 的回答全文(13)

点击此处或者复制链接后在 new bing 中打开。

4.3 bing 编写的程序# 导入turtle模块,用于绘图import turtle# 导入math模块,用于计算import math# 创建一个turtle对象,命名为tt = turtle.Turtle()# 设置画笔的颜色和速度t.color("blue")t.speed(0)# 设置阿基米德螺旋线的参数a = 10 # 螺旋线的起始半径(修改代码)b = 0.1 # 螺旋线的增长系数angle = 0 # 螺旋线的起始角度(修改代码)step = 5 # 螺旋线的步长# 移动画笔到原点(0, 0)(新增代码)t.goto(0, 0)# 循环绘制阿基米德螺旋线,直到半径超过200像素或角度超过1080度while a < 200 and angle < 1080: # 计算阿基米德螺旋线上当前点的极坐标(r, theta) r = a + b * angle # 半径等于起始半径加上增长系数乘以角度 theta = math.radians(angle) # 角度转换为弧度制 # 计算阿基米德螺旋线上当前点的直角坐标(x, y) x = r * math.cos(theta) # x坐标等于半径乘以余弦值 y = r * math.sin(theta) # y坐标等于半径乘以正弦值 if angle > 0: # 如果角度大于0,说明不是第一笔(新增代码) t.pendown() # 放下画笔,开始绘制(新增代码) else: # 否则,说明是第一笔(新增代码) t.penup() # 抬起画笔,不留痕迹(新增代码) # 设置画笔朝向与螺旋线方向一致(新增代码) t.setheading(angle) # 移动画笔到当前点,并画出一小段曲线 t.goto(x, y) # 更新角度和步长,使得曲线更平滑 angle += step step *= 0.99# 结束绘图,并保持窗口显示直到用户关闭 turtle.done()4.4 程序运行的结果

还是不正确,画笔箭头方向与螺旋线垂直了。

4.5 我的要求(14)

4.6 bing 的回答全文(14)

(略)

4.7 bing 编写的程序# 设置画笔的颜色和速度t.color("blue")t.speed(0)# 设置阿基米德螺旋线的参数a = 10 # 螺旋线的起始半径(修改代码)b = 0.1 # 螺旋线的增长系数angle = 0 # 螺旋线的起始角度(修改代码)step = 5 # 螺旋线的步长# 移动画笔到原点(0, 0)(新增代码)t.goto(0, 0)# 循环绘制阿基米德螺旋线,直到半径超过200像素或角度超过1080度while a < 200 and angle < 1080: # 计算阿基米德螺旋线上当前点的极坐标(r, theta) r = a + b * angle # 半径等于起始半径加上增长系数乘以角度 theta = math.radians(angle) # 角度转换为弧度制 # 计算阿基米德螺旋线上当前点的直角坐标(x, y) x = r * math.cos(theta) # x坐标等于半径乘以余弦值 y = r * math.sin(theta) # y坐标等于半径乘以正弦值 if angle > 0: # 如果角度大于0,说明不是第一笔(新增代码) t.pendown() # 放下画笔,开始绘制(新增代码) else: # 否则,说明是第一笔(新增代码) t.penup() # 抬起画笔,不留痕迹(新增代码) # 设置画笔朝向与螺旋线方向一致(新增代码) t.setheading(angle + 90) # 移动画笔到当前点,并画出一小段曲线 t.goto(x, y) # 更新角度和步长,使得曲线更平滑 angle += step step *= 0.999# 结束绘图,并保持窗口显示直到用户关闭 turtle.done()4.8 程序运行的结果

结语

通过与 new bing 沟通,让 bing 为我编写了一个令人满意的程序。从中可以得出以下启发:

1、我们需要 new bing 做的事情可以逐步描述,并不需要一次描述清楚;2、new bing 还会犯糊涂,需要不断指正。
本文链接地址:https://www.jiuchutong.com/zhishi/297505.html 转载请保留说明!

上一篇:Vue+Element UI-el-date-picker时间日期选择器组件(实现向后端传值)

下一篇:【web服务】nginx为什么这么受企业欢迎?看完这边文章你就懂了(nginx webservice)

  • 耕地占用税的特点与意义
  • 以前年度出口退税申报
  • 期初存货中固定制造费用
  • 无票收入也需要开票吗
  • 专门借款资本化时点
  • 申报后发现未勾选发票
  • 增值税16点税降到13点,补缴税款怎么算
  • 有什么法规依据法律规定
  • 城市规划部门收取的市政建设配套费是否作为契税的征税基数
  • 增值税建筑业税率几次调整
  • 产品成本核算过程
  • 员工拿发票报销可以公转私吗
  • 财务费用手续费有哪些
  • 农业生产免税政策
  • 早教加盟需要
  • 上海2018房产税实施细则
  • 不小心开了发票
  • 收到不开票的返利如何记账?
  • 会计当年是指哪一年
  • 未抵扣完的进项税额可以跨年抵扣吗
  • 应交增值税为负数代表什么
  • 收回委托加工物资的账务处理
  • 到期一次付息债券的实际利率怎么算
  • 应收账款未计提坏账,但是确实收不回来
  • 在建工程的二级明细的讲解
  • Windows11电脑更新后冲不上电
  • 银行承兑汇票开出后可以撤销吗?
  • Win10 Build 19044.1288累积更新补丁KB5006670(附更新修复内容汇总)
  • DxDebugService.exe是什么进程 DxDebugService进程安全吗
  • 出租固定资产取得的净收益计入什么科目
  • 增值税专用发票怎么开
  • 最小计算机系统包括
  • mysql实现事务
  • php imagefill
  • 如何进行iframe框架切换
  • RocketMQ-02
  • uniapp官方教程
  • php中cookie的值存储在哪
  • 关于预付账款的特点
  • 来料加工成品如何入库
  • 4s店收到红字发票怎么办
  • 物权转移手续是什么
  • 应收账款资产负债表负数
  • 伪静态html
  • python对应位置相乘
  • SQLite教程(十):内存数据库和临时数据库
  • MongoDB aggregate 运用篇个人总结
  • 利润分配转作股本的股利属于什么科目
  • 报销粘贴单怎么粘贴发票
  • 什么情况下借递债券
  • 基本户与一般户的区别与联系
  • 用友t6自定义结转
  • 个人开技术服务费
  • 母子公司之间无偿划转固定资产
  • 发票免税怎么做账
  • 不良债权处置折扣率
  • 服务类公司有成本吗
  • sql语句错误提示
  • mysql 去除重复查询结果
  • sqlserver 中ntext字段的批量替换(updatetext的用法)
  • win8专业版系统更改电脑设置没反应
  • winxp系统停止服务
  • 注册表及其作用
  • mac装双系统后无法开机
  • 王者自动更新怎么关
  • Win7摄像头怎么打开
  • win7升win8要钱吗
  • 电脑自带的groove音乐用不了
  • win7系统出现COMSurrogate
  • python selenium原理
  • Node.js中的全局对象有
  • ugui scrollview
  • javascript学习指南
  • android 图片滚动
  • js根据对象的key来获取对应值
  • 教大家使用灭火器
  • jstree异步加载
  • eclipse导入server
  • js检测类型的方法
  • 广东省电子税务局官网登录入口
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设