设为首页收藏本站

新微赢技术网

 找回密码
 注册
搜索
热搜: 回贴
查看: 84|回复: 6
打印 上一主题 下一主题

新手两问:关于Rnd 函数使用及 时间的加减运算

[复制链接]
跳转到指定楼层
1#
发表于 2010-1-10 05:31:05 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
用rnd函数如何产生一个区间的随机数呢?

如我想随机读取一数组中的某键的值.

程序代码:
dim array
array=array(x,y,i,x,b,a,w)
 response.write(array[Rnd(array.Count)])

这样正确吗?我始终不能明白Rnd[(number)] 中mumber的作用.这样可以随机到数组中所有的键吗?


别一个问题是何对时间进行相加减呢?

在我映像中datetime的recdate型是不能相加减的,而我切看到某人用:

overtime=now+CloseDays
'CloseDays为整数,如5

这是为什么呢?

同时,如果我想对时间的加减运算小到秒,应该用什么函数呢?
即如何把时间转为unixtime的int型呢?(刚学asp翻了半天没翻到此类函数)


请路过的各位前辈们多多帮助!后生在此先谢过了!
2#
发表于 2010-1-10 05:31:09 | 只看该作者
首先十分tianyu帮助.同时对于我迟钝的反映表示歉意!

第二个答案看明白了.

第一个答案的代码翻了下手册还是没有看懂.
有如下两小问:
第一:第三行生成了随机种子,为什么下面也没有用到它呢?何为随即种子,有何用呢?
第二:
(Ubound(arr)-0+1)这里为什么还要减零呢? 同时数字6乘以一些随机的小于1的分数,为何你就能肯定是在0-6区间呢?算式的最后又为何要再加零呢?
回复 支持 反对

使用道具 举报

3#
发表于 2010-1-10 05:31:12 | 只看该作者
程序代码:
Microsoft VBScript 编译器错误- Error '800a0408'

无效字符

/text/asp.asp, line 4

 response.write(array[Rnd(array.Count)])

这是为什么呢?
回复 支持 反对

使用道具 举报

4#
发表于 2010-1-10 05:31:16 | 只看该作者
谢谢版主的回复!
但我还是不明白:
(Ubound(arr)-0+1)这里为什么还要减零呢? 同时数字6乘以一些随机的小于1的分数,为何你就能肯定是在0-6区间呢?算式的最后又为何要再加零呢?

这一小问题?

同时看了百科的那篇关于随机种子的阐述,觉得那资料似呼过时了.
回复 支持 反对

使用道具 举报

5#
发表于 2010-1-10 05:31:20 | 只看该作者
数组中取元素用小括号,不是方括号。

随机数种子:http://baike.baidu.com/view/1127.htm

rnd的参数是种子。似乎要正的。
Randomize可以使每次生成的随机数不同。
回复 支持 反对

使用道具 举报

6#
发表于 2010-1-10 05:31:24 | 只看该作者
Q:用rnd函数如何产生一个区间的随机数呢?

A:这样

<%
dim arr
arr=Array("x","y","i","x","b","a","w")
Randomize() '随机种子
n=Int((Ubound(arr)-0+1)*Rnd()+0) '随机产生一个6—0之间的整数
response.write arr(n)
%>

Q:别一个问题是何对时间进行相加减呢?

A:时间的加减用 DateAdd(时间间隔,时间间隔数目,时间) 函数

<%
dim n
n=now()
response.write DateAdd("s",100,n) '在当前的时间上再过100秒后的时间
%>
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

申请友链|小黑屋|最新主题|手机版|新微赢技术网 ( 苏ICP备08020429号 )  

GMT+8, 2024-11-19 12:44 , Processed in 0.117342 second(s), 8 queries , Gzip On, Memcache On.

Powered by xuexi

© 2001-2013 HaiAn.Com.Cn Inc. 寰耽

快速回复 返回顶部 返回列表