![]() |
中国DOS联盟-- 联合DOS 推动DOS 发展DOS --联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum |
| 游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟 |
|
中国DOS联盟论坛 现在时间是 2026-08-08 16:13 |
共 47,811 主题排行 / 349,895 发帖 / 今日 0 篇 / 48,253 会员排行 |
| DOS批处理 & 脚本技术(批处理室) » [求助]关于random |
| 可打印版本 765 / 4 |
| 第1楼 pusofalse | 发表于 2008-05-21 18:11 |
| 银牌会员 发帖 646 积分 1,604 | |
|
[求助]关于random 在一个批处理中,开启变量延迟的情况下random扩展出两次相同结果的几率有多少~?
在批处理之家看到这样一题,新建一百个名字中不含5的文件夹 for /l %%a in (1 1 100) do call md %%random:5=%% 这样一条语句,难道能确保random绝对不会有两次相同的值吗?~ |
|
| 第2楼 bat-zw | 发表于 2008-05-21 18:14 |
| 金牌会员 发帖 1,276 积分 3,105 | |
|
for /l %%a in (1 1 100) do call md %%random:5=%%
我认为不行,绝对有重复情况出现 |
|
| 第3楼 26933062 | 发表于 2008-05-21 18:18 |
| 银牌会员 发帖 879 积分 2,268 | |
|
所以此答案绝不是正解。
51234 12345 15234 12543 12534 。。。。。。 太多了,结果都是重复的。 |
|
| 第4楼 pusofalse | 发表于 2008-05-21 18:23 |
| 银牌会员 发帖 646 积分 1,604 | |
|
再次试验了一下。。
setlocal enabledelayedexpansion for /l %%a in (1 1 100) do md !random:5=! 试验10次,没有重复结果。。 for /l %%a in (1 1 100) do call md %%random:5=%% 这条语句。。。每次都有一两次的重复结果~ 请教下,这个问题能说明什么~? |
|
| 第5楼 zh159 | 发表于 2008-05-21 20:25 |
| 金牌会员 发帖 1,467 积分 3,687 | |
|
如果不加入判断获取,绝对有重复情况出现
PS:以前讨论过每次连续运行BAT时random会出现小步幅递增的问题,试了一下: 改为如下后这种情况就会大大减轻 |
|
|
[ 联系联盟系统管理团队 -
中国DOS联盟 -
标准版 ] Sponsored by ifanr Inc | © 2001–2023 |