
声明:作者为LGW(佛山服务)
测试时间:2025.10.8
测 试 人: LGW
收到文件就AI.rar, 里面有6个文件,主要调用的程序是 AI.APP。
打开 VFP9.exe
在命令窗口先设一下当前工作路径
SET DEFAULT TO "D:\VFP\xinjie\AI\AI20251007"
Do AI.app
弹出一个AI窗口, 应该是要输入Deepseek 的 API 密钥
去 https://platform.deepseek.com/api_keys 注册申请一下,记得充个10元。
充完钱就可以开玩了

填写密钥确定后提示重新执行一次
SET DEFAULT TO "D:\VFP\xinjie\AI\AI20251007"
Do AI.app
MODIFY COMMAND 新程序
按Ctrl + P 自动出了下面的内容,或许AI想叫我写要求

我重新写出要求

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

方法虽然有点笨,但结果是正确
去查了一下我的余额,只是扣了2分钱
作者说我搞错了,从新来测
按 Ctrl + I ,输入我想要的“请补全代码,要求列出100个随机数, 确保出现的数不重复。”

自动出了下面的代码,比上面复杂了。
*** <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 可能更了解你

觉得原来放的位置不合理,还将放到一起
其中有些问题也反馈给作者
后面还有其他功能,迟些继续测, 祝愿作者继续升级越做越强