可用的ASP无重复数字随机函数, 数组实现, 并应用于随机显示记录集

经我们站长测试可用的ASP无重复数字随机函数, 数组实现, 并应用于随机显示记录集
作用:
本函数适用于随机显示小数量的随机不重复数字
本函数适用于显示小数量的随机不重复记录集
为了不影响效率, 上限超过一千, 不建议使用本函数
shawl.qiu
2006-09-06
 http://blog.csdn.net/btbtd
主内容: 函数及应用函数随机显示100条记录
linenum 


代码如下:

<%  
    dim rs, rNum  
    dim temp  
    set rs=createObject("adodb.recordset")  
        rs.open "select top 100 * from rnd_v1",conn,1  
        rNum=rs.recordCount-1  
        for each temp in fRndNoRpt(0,rNum)  
            rs.move temp  
            response.write rs("sbcat")  
            response.write "<br/>"  
            rs.movefirst  
        next  
        rs.close  
    set rs=nothing 'shawl.qiu code'  
    function fRndNoRpt(lwNum,upNum)  
    ''''''''''''''''''''''''''''''''''''''''''''  
    ' ASP 无重复数字随机函数, 数组实现, By shawl.qiu  
    ' 2006-09-06  
    '   http://blog.csdn.net/btbtd  
    '''''''''''''''''''''''''''''''''  
    ' 注意: 随机数超过1000, 不建议使用本函数.  
    '''''''''''''''''''''''''''''''''  
    ' 参数说明:  
    '''''''''''''''''''''''''''''''''  
    ' lwNum 为 数字数组下限, 如: 1  
    ' upNum 为 数字数组上限, 如: 100  
    '''''''''''''''''''''''''''''''''  
    ' sample call:  
    '''''''''''''''''''''''''''''''''  
    '    dim t  
    '    for each t in fRndNoRpt(1,100)  
    '        response.write t&"<br/>"  
    '    next  
    ''''''''''''''''''''''''''''''''''''''''''''  
        if upNum<1 or isNull(upNum) or upNum="" or isNumeric(upNum)=false then exit function  
        if lwNum<0 or isNumeric(lwNum)=false then exit function  
        dim num, temp  
        dim ar()  
        redim ar(upNum)  
        dim j:j=0  
        for temp=lwNum to upNum  
            num=num&"."&temp&"."  
        next  
        randomize      
        do until num=""  
                temp=int((upNum-lwNum+1)*rnd+lwNum)  
            if inStr(num,"."&temp&".")<>0 then   
                num=replace(num,"."&temp&".","")  
                ar(j)=temp  
                j=j+1  
            end if  
        loop  
        fRndNoRpt=ar  
        erase ar  
    end function 'shawl.qiu code'  
    response.write "<p/>使用随机数函数显示1至100的不重复随机数 1:<br/>-----------------------<br/>"  
    for each temp in fRndNoRpt(1,100)  
        response.write temp&"<br/>"  
    next  
    response.write "<p/>使用随机数函数显示1至100的不重复随机数 2:<br/>-----------------------<br/>"  
    temp=join(fRndNoRpt(1,100),"-")  
    response.write mid(temp,1,len(temp)-1)  
%>

(0)

相关推荐

  • 可用的ASP无重复数字随机函数, 数组实现, 并应用于随机显示记录集

    经我们站长测试可用的ASP无重复数字随机函数, 数组实现, 并应用于随机显示记录集作用: 本函数适用于随机显示小数量的随机不重复数字 本函数适用于显示小数量的随机不重复记录集 为了不影响效率, 上限超过一千, 不建议使用本函数 shawl.qiu 2006-09-06  http://blog.csdn.net/btbtd 主内容: 函数及应用函数随机显示100条记录 linenum  复制代码 代码如下: <%       dim rs, rNum       dim temp       s

  • Java 1,2,3,4能组成多少个互不相同且无重复数字的实现代码

    题目:有1.2.3.4个数字,能组成多少个互不相同且无重复数字的三位数?都是多少? 程序分析:可填在百位.十位.个位的数字都是1.2.3.4.组成所有的排列后再去 掉不满足条件的排列. 程序设计: public class Wanshu { public static void main(String[] args) { int i=0; int j=0; int k=0; int t=0; for(i=1;i<=4;i++) for(j=1;j<=4;j++) for(k=1;k<=4

  • Java 中实现随机无重复数字的方法

    一般有点开发经验的朋友都能实现这样的功能,只不过是效率上的问题.我们一般在面对这样的问题时,总会平铺直序的联想到,先生成一个数组,然后在一个循环中向数组中添加随机数字,在添加数字的过程中先查找一下数组中是否存在这个数字,如果不存在这个数字就直接添加到数组中:如果存在这个数字就不添 加.我们一般都是这样考虑问题的,这样考虑也能实现功能,我刚才也说了,只不过是效率上的问题. 为了更好地理解这个题意,我们先来看下具体内容:生成一个1-100 的随机数组,但数组中的数字不能重复,即位置是随机的,但数组元

  • 匹配5到10位无重复数字的正则表达式

    对于有重复的5到10位数字可以使用\d{5,10} 这样的正则 无重复的5到10位数字我考虑了一下还不会,最然只好查网上. 有一个版本还不错,反正RegexBuddy测试通过了. 复制代码 代码如下: ^(?!\d*?(\d)\d*?\1)\d{5,10}$ 对于(?!---(--)---\1)这样的形式我还没有研究透,有时间我真要细细研究. 上一个php的例子: 复制代码 代码如下: <?php $str = '123456789'; $search = '/^(?!\d*?(\d)\d*?\

  • .net中string无重复数字的实现方法

    复制代码 代码如下: //string strText = "1334677999";实现无重复        public static string qu(string lab)        {            string strResult = string.Empty;            for (int intIdx = 0; intIdx < lab.Length; intIdx++)            {                if (st

  • python实现猜数字游戏(无重复数字)示例分享

    复制代码 代码如下: import time, random class GuessNum:    def __init__(self):        self._num = ''        self.input_num = []        self.count = 1                                      #猜对所用次数        self.sec = 0                                           #猜

  • Python输出由1,2,3,4组成的互不相同且无重复的三位数

    题目:有四个数字:1.2.3.4,能组成多少个互不相同且无重复数字的三位数?各是多少? 程序分析:可填在百位.十位.个位的数字都是1.2.3.4.组成所有的排列后再去 掉不满足条件的排列. 程序源代码 方法1: #!/usr/bin/python # -*- coding: UTF-8 -*- for i in range(1,5): for j in range(1,5): for k in range(1,5): if( i != k ) and (i != j) and (j != k):

  • python组合无重复三位数的实例

    # -*- coding: utf-8 -*- # 简述:这里有四个数字,分别是:1.2.3.4 #提问:能组成多少个互不相同且无重复数字的三位数?各是多少? def f(n): list=[] count=0 for i in range(1,n+1): for j in range(1, n+1): for k in range(1, n+1): if i!=j and j!=k and i!=k: list.append(i*100+j*10+k) count=len(list) prin

  • asp.net 无重复随机数代码

    复制代码 代码如下: /// <summary> /// 产生无重复随机数 /// </summary> /// <param name="num">个数</param> /// <param name="minValue">最小数</param> /// <param name="maxValue">最大数</param> /// <retur

  • java实现二分法查找出数组重复数字

    本文实例为大家分享了java实现二分法查找出数组重复数字的具体代码,供大家参考,具体内容如下 package offer; /** * 二分查找的思想来找到数组中重复的数字,时间复杂度在o(nlogn)-o(n^2) */ public class FindDuplicate3 { public static void main(String[] args) { int numbers[] = {0,1,2,3,4,4,6,7};//数组中的数 大小从0 到 numbers.length-1 f

随机推荐