首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >VFP AI 插件(ver:20251007)测试报告

VFP AI 插件(ver:20251007)测试报告

作者头像
firstxinjie
发布2025-11-13 17:15:27
发布2025-11-13 17:15:27
1080
举报
文章被收录于专栏:X#(XSharp)X#(XSharp)

声明:作者为LGW(佛山服务)

测试时间:2025.10.8

测 试 人: LGW

收到文件就AI.rar, 里面有6个文件,主要调用的程序是 AI.APP。

打开 VFP9.exe

在命令窗口先设一下当前工作路径

代码语言:javascript
复制
SET DEFAULT TO "D:\VFP\xinjie\AI\AI20251007"
Do AI.app

弹出一个AI窗口, 应该是要输入Deepseek 的 API 密钥

去 https://platform.deepseek.com/api_keys 注册申请一下,记得充个10元。

充完钱就可以开玩了

填写密钥确定后提示重新执行一次

代码语言:javascript
复制
SET DEFAULT TO "D:\VFP\xinjie\AI\AI20251007"
Do AI.app
MODIFY COMMAND 新程序

按Ctrl + P 自动出了下面的内容,或许AI想叫我写要求

我重新写出要求

按我理解,应该在Ctrl + P 继续生成, 但结果没有反应

我试了Ctrl + I , 结果出来了

方法虽然有点笨,但结果是正确

去查了一下我的余额,只是扣了2分钱

作者说我搞错了,从新来测

按 Ctrl + I ,输入我想要的“请补全代码,要求列出100个随机数, 确保出现的数不重复。”

自动出了下面的代码,比上面复杂了。

代码语言:javascript
复制
*** <summary>
*** 生成指定数量的不重复随机数
*** </summary>
*** <param name="tnCount">数值型参数,要生成的随机数数量</param>
*** <param name="tnMin">数值型参数,随机数最小值</param>
*** <param name="tnMax">数值型参数,随机数最大值</param>
*** <returns>逻辑型返回值,成功返回.T.,失败返回.F.</returns>
Function GenerateUniqueRandomNumbers(tnCount As Number, tnMin As Number, tnMax As Number) As Logical
    Private All Like l*
    Local llResult    As Logical
    Local lnIndex     As Number
    Local lnRandom    As Number
    Local lnRange     As Number

    m.llResult = .T.

    Try
        *!* 参数验证
        If m.tnCount <= 0 Or m.tnMin >= m.tnMax
            m.llResult = .F.
            Return m.llResult
        EndIf

        *!* 计算数值范围
        m.lnRange = m.tnMax - m.tnMin + 1

        *!* 检查范围是否足够生成不重复随机数
        If m.tnCount > m.lnRange
            m.llResult = .F.
            Return m.llResult
        EndIf

        *!* 声明数组存储结果和标记数组
        Dimension laResult[m.tnCount]
        Dimension laUsed[m.lnRange]

        *!* 初始化标记数组
        For m.lnIndex = 1 To m.lnRange
            m.laUsed[m.lnIndex] = .F.
        EndFor

        *!* 生成不重复随机数
        m.lnIndex = 1
        Do While m.lnIndex <= m.tnCount
            m.lnRandom = Int(Rand() * m.lnRange) + 1

            If Not m.laUsed[m.lnRandom]
                m.laResult[m.lnIndex] = m.tnMin + m.lnRandom - 1
                m.laUsed[m.lnRandom] = .T.
                m.lnIndex = m.lnIndex + 1
            EndIf
        EndDo

        *!* 输出结果到屏幕
        For m.lnIndex = 1 To m.tnCount
            ? Transform(m.laResult[m.lnIndex])
        EndFor

    Catch To loException
        m.llResult = .F.
    Finally
        *!* 清理资源
        Release All Like la*
    EndTry

    Return m.llResult
EndFunc

来点注释实例

以前写程序无注释,现在 AI 可能更了解你

觉得原来放的位置不合理,还将放到一起

其中有些问题也反馈给作者

后面还有其他功能,迟些继续测, 祝愿作者继续升级越做越强

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2025-10-08,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 xinjie的VFP 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档