中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net  论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

游客:  注册 | 登录 | 命令行 | 会员 | 搜索 | 上传 | 帮助 »
中国DOS联盟论坛 » DOS疑难解答 & 问题讨论 (解答室) » [求助]在4DOS下如何输入随机数?(已解决)
作者:
标题: [求助]在4DOS下如何输入随机数?(已解决) 上一主题 | 下一主题
austion
初级用户





积分 178
发帖 82
注册 2006-5-12
状态 离线
『楼 主』:  [求助]在4DOS下如何输入随机数?(已解决)

刚下了个4DOS,但是发现原来的%random%不能使用了,请问如何输入随机数?
还有在XP上运行4DOS,那么这个4DOS 可以引用在纯DOS 下吗?
同时如果批处理在XP上运行的4DOS 上通过那么把这个4DOS 放在纯DOS下,还有那些批处理都能用的上吗?

[ Last edited by austion on 2008-11-25 at 20:18 ]

2008-11-25 10:41
查看资料  发短消息 网志   编辑帖子  回复  引用回复
DOSforever
金牌会员





积分 4633
发帖 2236
注册 2005-1-30
状态 离线
『第 2 楼』:  

4DOS 本来就是在 DOS 下运行的,在 Win9X 下也可以,但恰恰是最好不要在 WinNTs 下运行。

4DOS 产生一个随机数的函数是 @random

  Quote:
4DOS Help Topic:  @RANDOM


@RANDOM[min, max]:  Returns a "pseudo-random" value between min and max,
inclusive.  Min, max, and the returned value are all integers.

The pseudo-random number generator is initialized from the system clock the
first time it is used after 4DOS starts, so it will produce a different
sequence of random numbers each time you use it.  It can be called up to
115,792,089,237,316,195,423,570,985,008,687,907,853,269,984,665,640,564,039,
457,584,007,913,129,639,935 (2^256-1) times before repeating the sequence of
pseudo-random numbers it produces.  The Xorshift7 generator proposed in the
paper "On the Xorshift Random Number Generators" by Francois Panneton and
Pierre L'Ecuyer is used to generate the pseudo-random numbers.





DOS倒下了,但永远不死
DOS NEVER DIES !

投票调查:
http://www.cn-dos.net/forum/viewthread.php?tid=46187

本人尚未解决的疑难问题:
http://www.cn-dos.net/forum/viewthread.php?tid=15135
http://www.cn-dos.net/forum/viewthread.php?tid=47663
http://www.cn-dos.net/forum/viewthread.php?tid=48747
2008-11-25 15:16
查看资料  发短消息 网志   编辑帖子  回复  引用回复
austion
初级用户





积分 178
发帖 82
注册 2006-5-12
状态 离线
『第 3 楼』:  

看了那么多的英文还是不会怎么引用呢?我刚才倒是使用了时间分秒来设置一个算是随机值了。
我也试了在CONFIG.SYS里修改shell=4dos.com /P /F /E:1000后在DOS下能用。
只是我在那个DOS 下同时也有COMMAND.COM放在那,但是物品弄成在CONFIG.SYS里并没有它,那么到底我现在运行的是4DOS还是COMMAND啊!
如果我要把这个@RANDOM[min, max]赋值给A的话怎么弄?

2008-11-25 17:18
查看资料  发短消息 网志   编辑帖子  回复  引用回复
austion
初级用户





积分 178
发帖 82
注册 2006-5-12
状态 离线
『第 4 楼』:  

还有在4DOS下如何的算数的,我现在还使用了ASET才能算上,不知道这个4DOS怎样算数的呢?
在4DOS里
set a=1
set b=2
set c= %a% + %b%
echo %c%
出现的结果是: 1 + 2
在xp就是用SET /A,但在4DOS下就不懂了。

2008-11-25 17:21
查看资料  发短消息 网志   编辑帖子  回复  引用回复
DOSforever
金牌会员





积分 4633
发帖 2236
注册 2005-1-30
状态 离线
『第 5 楼』:  



  Quote:
但是物品弄成在CONFIG.SYS里并没有它

这句话看不懂
要知道你现在用的是什么命令解释器 ver 看一下就可以了。

@random[min,max],这里的 min 和 max 是你想要生成随机数大小的范围,闭区间。比如,要产生1至100之间的随机数给环境变量 a 的话
set a=%@random[1,100]
就可以了

要计算的话必须用到 4DOS 的 @eval 变量函数,比如
set a=1
set b=2
set c=%@eval[%a% + %b%]
echo %c%



DOS倒下了,但永远不死
DOS NEVER DIES !

投票调查:
http://www.cn-dos.net/forum/viewthread.php?tid=46187

本人尚未解决的疑难问题:
http://www.cn-dos.net/forum/viewthread.php?tid=15135
http://www.cn-dos.net/forum/viewthread.php?tid=47663
http://www.cn-dos.net/forum/viewthread.php?tid=48747
2008-11-25 18:43
查看资料  发短消息 网志   编辑帖子  回复  引用回复
austion
初级用户





积分 178
发帖 82
注册 2006-5-12
状态 离线
『第 6 楼』:  

谢谢,这下就懂得了,原来是要在前面加上%

2008-11-25 20:18
查看资料  发短消息 网志   编辑帖子  回复  引用回复

请注意:您目前尚未注册或登录,请您注册登录以使用论坛的各项功能,例如发表和回复帖子等。


可打印版本 | 推荐给朋友 | 订阅主题 | 收藏主题



论坛跳转: