本文转自 http://blog.sina.com.cn/s/blog_658e0d940100i0os.html
首先介绍一下本实例用到的核心函数: Rnd
Rnd函数的作用就是返回一个随机数,这里有一个注意点:
因每一次连续调用 Rnd 函数时都用序列中的前一个数作为下一个数的种子,所以对于任何最初给定的种子都会生成相同的数列。 所以在调用 Rnd 之前,先使用无参数的 Randomize 语句初始化随机数生成器,该生成器具有基于系统计时器的种子。
这里教大家一个产生指定范围的随机数的一个公式:
Int((upperbound - lowerbound + 1) * Rnd + lowerbound)
这里, upperbound 是此范围的上界,而 lowerbound 是此范围内的下界。
例如: Int((30-0+1)*Rnd+0) 将返回0到30的整数
好了,现在用实例来讲解Rnd函数的应用:
一下是代码片段:
- <html>
- <title>
- 生成随机字符串
- </title>
- <body>
- <%
- Function gen_key(digits)
- '定义并初始化数组
- dim char_array(80)
- '初始化数字
- For i = 0 To 9
- char_array(i) = CStr(i)
- Next
- '初始化大写字母
- For i = 10 To 35
- char_array(i) = Chr(i + 55)
- Next
- '初始化小写字母
- For i = 36 To 61
- char_array(i) = Chr(i + 61)
- Next
- Randomize '初始化随机数生成器。
- do while len(output) < digits
- num = char_array(Int((62 - 0 + 1) * Rnd + 0))
- output = output & num
- loop
- '设置返回值
- gen_key = output
- End Function
- '把结果返回给浏览器
- response.write "本实例生成的十三位随机字符串为:"
- response.write "<font color=""red"">"&gen_key(13)&"</font>"
- %>
- </body>
- </html>
该实例的效果就是随机产生十三位字符串,效果如下:
以下是代码运行效果:
本实例生成的十三位随机字符串为:YBUjVpL4yJeCo
转载于:https://blog.51cto.com/zbliangc/774009