【ASP】在特定的范围内产生N个不同的随机数
ASP产生一个随机数不难。就两条特定语句:
<%
Randomize
x=int(20*rnd+1)
%>
以上的两条语句。表示从1~20这个范围内产生随机数,而且这些随机数都是整数。
那么,要在1~20连续产生20个不同的随机数。也就是随机排列1~20。该怎么解决呢?
首先,我们须要数组来存储这20个不同的随机数。
ASP能够用例如以下的两种方式定义一个容量为20数组:
<%
dim number(20)
%>
<%
dim number
redim number(20)
%>
当中。第二组后接number= Session("xx") 能接住前一页面通过Session("xx")=number。传递过来的number数组。
要在1~20连续产生20个不同的随机数,也就是随机排列1~20的基本思想是:
首先在1~20产生一个随机数X。然后对这个之前产生的数据进行遍历。推断是否存在有数等于这个新产生的随机数的,假设有,立flag,
然后对之前的数据遍历完成之后,推断flag是否立起来。
假设是。就不加入这个随机数进数组。又一次产生随机数并收起flag,再又一次遍历已有的数据中是否已有这个随机数,
假设否。就加入,直到20个数据产生完成。
最后输出这个20个数据
详细实现的代码例如以下:
<%@LANGUAGE="VBSCRIPT" CODEPAGE="65001"%>
<%
'禁止缓存'
Response.CacheControl="no-cache"
Response.Expires=-1
Response.Charset="UTF-8" '配合第一行设定网页编码' '核心代码'
dim RandomArray(20) '定义一个长20的一位数组'
i=0
do while i<UBound(RandomArray,1)
Randomize
x=int(20*rnd+1)
flag=true
For j=0 To UBound(RandomArray,1)
if RandomArray(j)=x then
flag=false
exit for
end if
next
if flag=true then
RandomArray(i)=x
i=i+1
end if
loop '输出数组'
For i=0 To UBound(RandomArray,1)
Response.Write RandomArray(i)&","
Next %>
执行结果例如以下:
能够发现,每次刷新这个页面,此20个数据都是不同的。
【ASP】在特定的范围内产生N个不同的随机数的更多相关文章
- ASP,ASP.net,JSP语法、内置对象对比
1 各自的HelloWord版本 1.1 ASP <% Response.Write("hello asp") %> 文件名为test.asp. 1.2 ASP.ne ...
- Asp.Net Core MVC框架内置过滤器
第一部分.MVC框架内置过滤器 下图展示了Asp.Net Core MVC框架默认实现的过滤器的执行顺序: Authorization Filters:身份验证过滤器,处在整个过滤器通道的最顶层.对应 ...
- asp.net 修改/删除站内目录操作后会导致Session丢失
http://www.jb51.net/article/21770.htm http://blog.chinaunix.net/uid-7425507-id-134216.html 在Web项目中使用 ...
- ASP.NET CORE中控制器内return HTML 内容自动编码问题
以前ASP.NET MVC中在控制器中直接 return Content( "<h1>测试测试</h1>"); 在前台VIEW上就显示加粗的文字了,但是在A ...
- Asp.net实现同页面内多图片自动上传并带预览显示
FileUpload控件实现单按钮图片自动上传并带预览显示 1.实现原理: 此方法适合针对有后台生成的图片相关内容,例如购物网站商品展示页面中的封面图片,图片的数量由后台访问数据库,并加载到页面.这种 ...
- ASP.NET MVC之如何看待内置配置来提高性能优化(四)
前言 前几篇我们比较基础的讲了下MVC中的知识,这一节我们穿插点知识,讲讲MVC中我们可以提高性能的办法. Razor视图引擎优化(优化一) 我们知道默认情况下配置MVC去解析一个视图会首先约定通过查 ...
- js 实现控制点击事件在特定的毫秒内 只允许点击一次(防止重复点击)
代码 第一种方法 var forbidRepeartClick = (function(){ var instance = null; var canClick = true; function Bu ...
- asp.net 实现搜索站内搜索功能
首先有index和search 两个页面 index页面中有textbox1和button1两个控件 双击button1控件添加代码: protected void Button1_Click(obj ...
- 给定范围内产生N个不同的随机数
void RandNumbs(int nLimts, int result[], int n)//给定范围内产生n个不同随机数(1-nLimts),并存储到result中 { int nNum = 0 ...
随机推荐
- python 数据的基本类型(字符串)
python 基础 ascii:字母,数字,特殊字符:1个字节(byte) 8个字位(bit)unicode: 16位两个字节,升级32个字节 4个字位utf-8:最少一个字节 8个表示. 英文 8字 ...
- flex和layout移动端布局
1.九宫格 样式为: ul{ display: flex; flex-wrap: wrap;//超出换行 } li{ width: 33%; height: 60px; display: flex; ...
- BZOJ 1116 并查集
思路: 如果 每个联通块 边数>=点数 就OK 用并查集搞 //By SiriusRen #include <cstdio> #include <cstring> #in ...
- mvc 伪静态任意扩展名的实现方法
比如:要实现 http://localhost:60291/home/geta/1212.html 或者 .abc 任意扩展名 完成两步即可. 第一步修改路由: public static void ...
- ViewData与ViewBag的使用区别
在Asp.net MVC 3 web应用程序中,我们会用到ViewData与ViewBag,对比一下: ViewData ViewBag 它是Key/Value字典集合 它是dynamic类型对像 从 ...
- Android 微信分享与QQ分享功能
微信分享与QQ分享功能现在都挺常见的,可以根据一些第三方社会化分功能快速实现,不过多多少少都不怎么纯净,最好都是自己看官方文档来实现就最好了~ 一.微信分享 微信分享功能需要先在微信开放平台注册应用并 ...
- 2017-4-18 关于小组APP
演讲: 各位合作伙伴:我们的产品:图书鉴赏是为了解决18岁到28岁青年的痛苦,他们需要更好的图书推荐,更多的好书,但是现有的方案并没有能很好的解决这些需求,我们有独特的办法制作一个图书鉴赏的APP,它 ...
- Kafka 分布式消息系统详解
实际上kafka对机器的需求与Hadoop的类似. 原来,对于Linkin这样的互联网企业来说,用户和网站上产生的数据有三种: 需要实时响应的交易数据,用户提交一个表单,输入一段内容,这种数据最后是存 ...
- python第三方库 pip 豆瓣源
pip install xxx -i http://pypi.douban.com/simple/ xxx 为包名
- 理解题意后的UVa340
之前理解题意错误,应该是每一次game,只输入一组答案序列,输入多组测试序列,而之前的错误理解是每一次输入都对应一组答案序列和一组测试序列,下面是理解题意后的代码,但是还是WA,待修改 #includ ...