手机
当前位置:查字典教程网 >编程开发 >ASP教程 >ASP中一个用VBScript写的随机数类
ASP中一个用VBScript写的随机数类
摘要:外国人写的一个class,这么一点小小的应用,除非有特殊需求,还没有必要模块化。用asp产生一个随机数。

外国人写的一个class,这么一点小小的应用,除非有特殊需求,还没有必要模块化。

用asp产生一个随机数。

<%

''**************************************************************************

''CLASS:cRandom

''Callsrandomizetoseedtherandomnumbergenerator.

''Providesfunctionsforreturningrangedrandomintegersorarraysof

''rangedrandomintegers.

''Callingrandomizetoseedtherandomnumbergeneratoratthetimethe

''classiscreatedseemedlikeareasonablethingtodo.

privatesubClass_Initialize()

''ChecktheVBScriptdocumentationforthespecificsrelating

''totheRandomizefunction

Randomize

endsub

''Terminatedoesn''tneedtodoanythingforthisclass

privatesubClass_Terminate()

endsub

''**********************************************************************

''FUNCTION:RangedRandom

''PARAMETER:lowerBound,thelowestallowablenumbertoreturn

''PARAMETER:upperBound,thehighestallowablenumbertoreturn

''RETURNS:ArandomintegerbetweenlowerBoundandUpperBound,

''inclusive

''**********************************************************************

publicfunctionRangedRandom(lowerBound,upperBound)

RangedRandom=CInt((upperBound-lowerBound)*Rnd+lowerBound)

endfunction

''**********************************************************************

''FUNCTION:RangedRandomArray

''PARAMETER:lowerBound,thelowestallowablenumbertoreturn

''PARAMETER:upperBound,thehighestallowablenumbertoreturn

''PARAMETER:arraySize,zerobasednumberspecifyingthesizeofthearray

''PARAMETER:duplicates,trueorfalsetoindicatewhetherduplicate

''resizethetempArraytoholdthenumberofelementspassedinthe

''arraySizeparameter

redimtempArray(arraySize)

''Thisisaloopcounter,setitto0

filledElements=0

''loopuntilfilledElementsisequaltothearraySize+1

dountilfilledElements=arraySize+1

''CalltheRangedRandomfunctionwiththelowerBoundandupperBoundparameters

tempValue=RangedRandom(lowerBound,upperBound)

''Handlethecasewherewedon''twantduplicatevalues

ifduplicates=falsethen

badValue=false

fori=0toUBound(tempArray)

''checkifthenewrandomvaluealreadyexistsinthearray

''ifitdoessetthebadValueflagtotrueandbreakoutoftheloop

iftempValue=tempArray(i)then

badValue=true

exitfor

endif

next

ifbadValue=falsethen

tempArray(filledElements)=tempValue

filledElements=filledElements+1

endif

else

''Handlethecasewhereduplicatevaluesinthearrayareacceptable

tempArray(filledElements)=tempValue

filledElements=filledElements+1

endif

loop

''returnthearray

RangedRandomArray=tempArray

endfunction

endclass

%>

<%

''Allthecodethatfollowsisexamplecodeshowingtheuseofthe

''cRandomclass.

dimobjRandom

dimflip

dimrandomArray

dimrowsToTest

dimi,j

''createaninstanceofourclass

setobjRandom=newcRandom

''setthenumberofiterationsthatwewanttotest

rowsToTest=10

''"toggle"todeterminewhetherornotwesetthebgcolorofthetablerow

flip=true

''Startthetable

Response.Write"<tableborder=0cellpadding=1cellspacing=1>"

forj=0torowsToTest

''We''llalternatethebgcolorofthetablerowsbasedonthe

''valueoftheflipvariable

ifflipthen

Response.Write"<trbgcolor=LightGrey>"

else

Response.Write"<tr>"

endif

''CalltheRangedRandomArrayfunctionfortestingpurposes

randomArray=objRandom.RangedRandomArray(1,10)

【ASP中一个用VBScript写的随机数类】相关文章:

改进一下asp自带的formatNumber函数

asp中的Rnd 函数

ASP整合一个SQL语句类

ASP中七种实现分页显示的方法

ASP 中Split 函数的实例

在ASP程序中打印Excel表格的新方法

在ASP中使用简单Java类

ASP常用函数:ArrayToxml

怎样判断一个盘上是否有文件

ASP中http状态跳转返回错误页的问题

精品推荐
分类导航