中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --
联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟
中国DOS联盟论坛
现在时间是 2026-08-12 12:39
47,811 主题排行 / 349,897 发帖 / 今日 0 篇 / 48,256 会员排行
DOS批处理 & 脚本技术(批处理室) » [已解决]判断输入数是否为素数,脚本错在哪?
可打印版本  781 / 3
第1楼 jarry0932 发表于 2010-03-26 20:01
初级用户 发帖 122 积分 128
[已解决]判断输入数是否为素数,脚本错在哪?
我写的一个判断输入的数是否为素数,如果输入的数不是素数可以正确显示“不是素数”,但如果输入一个素数,则返回的总是空值,不知道错在哪?请大侠指点迷津!!
代码如下:

dim scanf,p
scanf=inputbox("输入一个数:","判断输入的是不是素数")
p=only(scanf)
msgbox(p)

function only(num)
dim half,prf
num=int(num)
if num<1 then
only="输入无效"
exit function
end if
half=num\2
for a=2 to half
prf=num mod a
if prf=0 then
only="不是素数"
exit for
end if
if a=haif then only="是素数"
next
end function

[ Last edited by jarry0932 on 2010-3-28 at 11:36 ]
第2楼 qinchun36 发表于 2010-03-27 01:56
高级用户 发帖 400 积分 609
你在脚本最开始加上这么一行再运行就很容易查出错误了:
第3楼 slore 发表于 2010-03-27 19:35
铂金会员 发帖 2,478 积分 5,212
half=sqr(num)
比较好。
第4楼 jarry0932 发表于 2010-03-28 11:35
初级用户 发帖 122 积分 128
我终于知道是哪里有问题了!!借鉴两位大侠的方法,然后发现原来是我粗心大意把half变量打成了haif。。。哎~~~~太不细心了。。。谢谢两位的指点啦
[ 联系联盟系统管理团队 - 中国DOS联盟 - 标准版 ]
Sponsored by ifanr Inc | © 2001–2023