自定义的随机函数

*----------------------------------------
*自定义的随机函数
*----------------------------------------

v_Multiplier=22695477  &&最大数
v_Increment=1          &&最小数
v_Seed=SECOND()        &&初始种子

*测试
?nRand()  &&输出随机数
?RandMax(100)  &&输出100以内的随机数

*产生随机数
FUNCTION nRand  
      v_Seed=MOD(v_Multiplier*v_Seed+v_Increment,(2**32))
      RETURN BITAND(v_Seed/(2**16),32767)  &&返回1-32767之间的随机数
ENDFUNC

*产生指定上限的随机数
FUNCTION RandMax
     PARAMETER p_MaxVal
     RETURN MOD(nRand(),p_MaxVal)+1
ENDFUNC
 

你可能感兴趣的:(VFP)